Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.46.0-wmf.22 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:StronaStart/styles.css 10 33595 538686 528748 2026-03-31T18:57:13Z Persino 2851 538686 sanitized-css text/css .fonty_rodzina_sans{ font-family: Arial, Helvetica, "Free Helvetian", FreeSans, sans-serif; font-stretch:normal; font-variant:normal; font-style:normal; font-weight:normal; font-size-adjust:none; letter-spacing:normal; word-spacing:normal; text-align:justify; text-align-last:left; text-justify:inter-word; word-wrap:break-word; word-break:break-word; hyphens:auto; } .fonty_główna_kolumna, .fonty_tekst_we_wzorach, .fonty_obiekt, .fonty_rysunek, .fonty_patrz,.fonty_zobaczteż, .fonty_twierdzenie, .fonty_hipoteza, .fonty_lemat, .fonty_kryterium, .fonty_dowód, .fonty_postulat, .fonty_postulaty, .fonty_określenie, .fonty_zadanie, .fonty_praktyka, .fonty_procedura, .fonty_schemat{ font-size:calc( 0.875rem * 1.042 ); line-height:1.3em; } .format .fonty_główna_kolumna{ font-size:calc( 0.875em * 1.042 ); line-height:1.3em; } .format .fonty_tekst_we_wzorach, .format .fonty_obiekt, .format .fonty_rysunek, .format .fonty_patrz,.fonty_zobaczteż, .format .fonty_twierdzenie, .format .fonty_hipoteza, .format .fonty_lemat, .format .fonty_kryterium, .format .fonty_dowód, .format .fonty_postulat, .format .fonty_postulaty, .format .fonty_określenie, .format .fonty_zadanie, .format .fonty_praktyka, .format .fonty_procedura, .format .fonty_schemat{ font-size:1em; line-height:1.3em; } .fonty_poboczna_kolumna{ font-size:calc( 0.75rem * 1.040 ); line-height:1.2em; } .format .fonty_poboczna_kolumna{ font-size:calc( 0.75em * 1.040 ); line-height:1.2em; } .fonty_toc{ font-size:calc( 0.8125rem * 1.092 ); line-height: 1.0em; } .format .fonty_toc{ font-size:calc( 0.8125em * 1.092 ); line-height: 1.0em; } :not(span):not(.fonty_formuły) > span.mwe-math-element, :not(span):not(.fonty_wzory) > span.mwe-math-element, .fonty_rodzina_serif{ font-family: "Times New Roman", Times, "Free Times", FreeSerif, serif; font-stretch:normal; font-variant:normal; font-style:normal; font-weight:normal; font-size-adjust:0.45; letter-spacing:normal; word-spacing:normal; word-wrap:break-word; word-break:break-word; } :not(span):not(.fonty_formuły) > span.mwe-math-element, :not(span):not(.fonty_wzory) > span.mwe-math-element, .fonty_formuły, .fonty_wzory{ font-size:calc( 0.875rem * 0.86 ); line-height:inherit; } .format .fonty_formuły, .format .fonty_wzory{ font-size:calc( 0.875em * 0.86 / 0.875 / 1.042 ); line-height:inherit; } .format .fonty_formuły > span.fonty_tekst_we_wzorach, .format .fonty_wzory > span.fonty_tekst_we_wzorach{ font-size:calc( 1em / 0.875 / 0.86 * 0.875 * 1.042 ); line-height:inherit; } .fonty_opis_i_numeracja, .fonty_linkobiekt, .fonty_linkwzór, .fonty_linkrysunek, .fonty_linkpatrz,.fonty_linkzobaczteż, .fonty_linktwierdzenie, .fonty_linkhipoteza, .fonty_linklemat, .fonty_linkkryterium, .fonty_linkdowód, .fonty_linkpostulat, .fonty_linkpostulaty, .fonty_linkokreślenie, .fonty_linkzadanie, .fonty_linkpraktyka, .fonty_linkprocedura, .fonty_linkschemat,.fonty_linknagłówek{ font-size:calc(0.8125rem * 1.034); line-height:inherit; } .format .fonty_opis_i_numeracja, .format .fonty_linkobiekt, .format .fonty_linkwzór, .format .fonty_linkrysunek, .format .fonty_linkpatrz,.format .fonty_linkzobaczteż, .format .fonty_linktwierdzenie, .format .fonty_linkhipoteza, .format .fonty_linklemat, .format .fonty_linkkryterium, .format .fonty_linkdowód, .format .fonty_linkpostulat, .format .fonty_linkpostulaty, .format .fonty_linkokreślenie, .format .fonty_linkzadanie, .format .fonty_linkpraktyka, .format .fonty_linkprocedura, .format .fonty_linkschemat,.format .fonty_linknagłówek{ font-size:calc( 1em * 0.8125 * 1.034 / 0.875 / 1.042 ); line-height:inherit; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart|sortuj spacją=tak}}*/ q0rc37forinaleykow77b2wssqv8k90 538703 538686 2026-03-31T21:41:52Z Persino 2851 538703 sanitized-css text/css .fonty_rodzina_sans{ font-family: Arial, Helvetica, "Free Helvetian", FreeSans, sans-serif; font-stretch:normal; font-variant:normal; font-style:normal; font-weight:normal; font-size-adjust:none; letter-spacing:normal; word-spacing:normal; text-align:justify; text-justify:inter-word; word-wrap:break-word; word-break:break-word; hyphens:auto; } .fonty_główna_kolumna, .fonty_tekst_we_wzorach, .fonty_obiekt, .fonty_rysunek, .fonty_patrz,.fonty_zobaczteż, .fonty_twierdzenie, .fonty_hipoteza, .fonty_lemat, .fonty_kryterium, .fonty_dowód, .fonty_postulat, .fonty_postulaty, .fonty_określenie, .fonty_zadanie, .fonty_praktyka, .fonty_procedura, .fonty_schemat{ font-size:calc( 0.875rem * 1.042 ); line-height:1.3em; } .format .fonty_główna_kolumna{ font-size:calc( 0.875em * 1.042 ); line-height:1.3em; } .format .fonty_tekst_we_wzorach, .format .fonty_obiekt, .format .fonty_rysunek, .format .fonty_patrz,.fonty_zobaczteż, .format .fonty_twierdzenie, .format .fonty_hipoteza, .format .fonty_lemat, .format .fonty_kryterium, .format .fonty_dowód, .format .fonty_postulat, .format .fonty_postulaty, .format .fonty_określenie, .format .fonty_zadanie, .format .fonty_praktyka, .format .fonty_procedura, .format .fonty_schemat{ font-size:1em; line-height:1.3em; } .fonty_poboczna_kolumna{ font-size:calc( 0.75rem * 1.040 ); line-height:1.2em; } .format .fonty_poboczna_kolumna{ font-size:calc( 0.75em * 1.040 ); line-height:1.2em; } .fonty_toc{ font-size:calc( 0.8125rem * 1.092 ); line-height: 1.0em; } .format .fonty_toc{ font-size:calc( 0.8125em * 1.092 ); line-height: 1.0em; } :not(span):not(.fonty_formuły) > span.mwe-math-element, :not(span):not(.fonty_wzory) > span.mwe-math-element, .fonty_rodzina_serif{ font-family: "Times New Roman", Times, "Free Times", FreeSerif, serif; font-stretch:normal; font-variant:normal; font-style:normal; font-weight:normal; font-size-adjust:0.45; letter-spacing:normal; word-spacing:normal; word-wrap:break-word; word-break:break-word; } :not(span):not(.fonty_formuły) > span.mwe-math-element, :not(span):not(.fonty_wzory) > span.mwe-math-element, .fonty_formuły, .fonty_wzory{ font-size:calc( 0.875rem * 0.86 ); line-height:inherit; } .format .fonty_formuły, .format .fonty_wzory{ font-size:calc( 0.875em * 0.86 / 0.875 / 1.042 ); line-height:inherit; } .format .fonty_formuły > span.fonty_tekst_we_wzorach, .format .fonty_wzory > span.fonty_tekst_we_wzorach{ font-size:calc( 1em / 0.875 / 0.86 * 0.875 * 1.042 ); line-height:inherit; } .fonty_opis_i_numeracja, .fonty_linkobiekt, .fonty_linkwzór, .fonty_linkrysunek, .fonty_linkpatrz,.fonty_linkzobaczteż, .fonty_linktwierdzenie, .fonty_linkhipoteza, .fonty_linklemat, .fonty_linkkryterium, .fonty_linkdowód, .fonty_linkpostulat, .fonty_linkpostulaty, .fonty_linkokreślenie, .fonty_linkzadanie, .fonty_linkpraktyka, .fonty_linkprocedura, .fonty_linkschemat,.fonty_linknagłówek{ font-size:calc(0.8125rem * 1.034); line-height:inherit; } .format .fonty_opis_i_numeracja, .format .fonty_linkobiekt, .format .fonty_linkwzór, .format .fonty_linkrysunek, .format .fonty_linkpatrz,.format .fonty_linkzobaczteż, .format .fonty_linktwierdzenie, .format .fonty_linkhipoteza, .format .fonty_linklemat, .format .fonty_linkkryterium, .format .fonty_linkdowód, .format .fonty_linkpostulat, .format .fonty_linkpostulaty, .format .fonty_linkokreślenie, .format .fonty_linkzadanie, .format .fonty_linkpraktyka, .format .fonty_linkprocedura, .format .fonty_linkschemat,.format .fonty_linknagłówek{ font-size:calc( 1em * 0.8125 * 1.034 / 0.875 / 1.042 ); line-height:inherit; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart|sortuj spacją=tak}}*/ 2xy1ca103kjynoexi9ks6uf21i7n35q Szablon:Pre/opis 10 45930 538723 517299 2026-04-01T00:03:16Z Persino 2851 /* Przykłady rozszerzone, część pierwsza */ 538723 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon umożliwia umieszczenie modyfikowalnego tekstu pomiędzy znacznikami: {{Tag|pre}} (jest to element blokowy) - (tagi języka HTML), za pomocą szablonów: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}} lub {{s|Pre start}} i {{s|Pre koniec}}, oparty na obsłudze identyfikatorów: {{Code|id}}, styli: {{Code|style}} (właściwości i ich zawartości przedstawiający język CSS), klas: {{Code|class}} (reguł w kaskadowych arkuszach stylów) i atrybutów (inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}), elementu HTML. Tekst jest umieszczany wewnątrz szablonu {{s|Pre}} pomiędzy znacznikami: {{Tag|pre}} lub pomiędzy szablonami: {{s|Pre start}} i {{s|Pre koniec}}, pomiędzy tymi samymi znacznikami. Przy czym identyfikatory ({{Code|id}}), style ({{Code|style}}), klasy ({{Code|class}}) i atrybuty podaje się tylko w znaczniku otwierającym. W szablonach: {{s|Pre}}, {{s|PreBody}} i {{s|PreBody2}} oraz {{s|Pre start}} i {{s|Pre koniec}}, wiele spacji nie są skracane do jednej spacji, chyba, że użyjemy: {{Parametr|styl|white-space:pre-line}}, aby nie dodawać nowego stylu przygotowano specjalne szablony: {{s|PreLine}} i {{s|PreLineBody}}. Użycie: tego szablonu, ale nie wersji otwierającej i zamykającej, gdy w kodzie znajdują się znaki "=", to w nim należy stosować szablon {{s|{{=}}}}. == Opis parametrów == Szablony: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, przyjmują argumenty, którego wartości wraz z odpowiednimi nazwami, oprócz zmiennej {{Code|1}}, w nim, wsadza on do tagu, coś w rodzaju: {{Tag|tag|parametry=nazwa="wartość"}}, obsługiwanego przez niego znacznika, prze którego on jest oparty, a oto lista tych zmiennych dla poszczególnych ich podane w poniższych rozdziałach. === Szablon {{s|Pre}} === ; Wywołanie {{Pre|{{s|Pre|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreBody}} === ; Wywołanie {{Pre|{{s|PreBody|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreBody2}} === ; Wywołanie {{Pre|{{s|PreBody2|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreLine}} === ; Wywołanie {{Pre|{{s|PreLine|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreLineBody}} === ; Wywołanie {{Pre|{{s|PreLineBody|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|Pre start}} === ; Wywołanie {{Pre|{{s|Pre start|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny, * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|Pre koniec}} === ; Wywołanie {{Pre|{{s|Pre koniec}}}} ; Parametry * Szablon {{s|Pre koniec}} nie przyjmuje parametrów. ===Dalsze rozważania === A szablony: {{s|Pre start}} (otwierający) i {{s|Pre koniec}} (zamykający) albo {{s|Pre}} lub {{s|PreLine}}, umieszczają tekst do przepreformatowania pomiędzy znacznikami <nowiki><pre></pre></nowiki>. Te szablony są tak napisane, by dało się umieścić pomiędzy tymi znacznikami tekst modyfikowalny, a normalnie bez nich mamy kod: {{Pre|<nowiki><pre>Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.</pre></nowiki>}} a jego wywołanie jest: <pre>Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.</pre> A po użyciu szablonów: {{s|Pre start}} i {{s|Pre koniec}} albo {{s|Pre}} lub {{s|PreBody}} ewentualnie {{s|PreBody2}} bądź {{s|PreLine}} lub {{s|PreLineBody}}, już tak nie jest. == Wikikod szablonów: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, zbudowanych za pomocą szablonu znaczników (kombajnów) == Szablony: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}},{{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, mają kod w zależności od znacznika {{s|Znacznik}}, {{s|Znacznik start}} lub {{s|Znacznik koniec}}, przedstawiające się: ; Szablon {{s|Pre}} {{PreWikikod|Pre}} ; Szablon {{s|PreBody}} {{PreWikikod|PreBody}} ; Szablon {{s|PreBody2}} {{PreWikikod|PreBody2}} ; Szablon {{s|PreLine}} {{PreWikikod|PreLine}} ; Szablon {{s|PreLineBody}} {{PreWikikod|PreLineBody}} ; Szablon {{s|Pre start}} {{PreWikikod|Pre start}} ; Szablon {{s|Pre koniec}} {{PreWikikod|Pre koniec}} == Przykłady == === Przykłady podstawowe === * Przykład pierwszy: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} * Przykład drugi: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.|styl{{=}}font-weight:bold;}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.|styl=font-weight:bold;}} === Przykłady rozszerzone, część pierwsza === * Przykład pierwszy: {{s|Pre|{{s|PreBody2|styl{{=}}font-family:inherit;|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki> .}}}}, a jego wynik za pomocą szablonu {{s|Pre}}: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} ---- A za pomocą szablon {{s|PreBody}}: {{PreBody|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreBody2}}: {{PreBody2|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreLine}}: {{PreLine|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreLineBody}}: {{PreLineBody|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} === Przykłady rozszerzone, część druga === * Przykład drugi: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.|styl{{=}}font-weight:bold;}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.|styl=font-weight:bold;}} * Przykład trzeci: {{s|Pre start}}Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.{{s|Pre koniec}}, a jego wynik: {{Pre start}}Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.{{Pre koniec}} * Przykład czwarty: {{s|Pre start|styl{{=}}font-weight:bold;}}Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.{{s|Pre koniec}}, a jego wynik: {{Pre start|styl=font-weight:bold;}}Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.{{Pre koniec}} === Szablony preformatujące tekst, z przykładami, dla szablonu otwierającego {{s|Pre start}} i zamykającego {{s|Pre koniec}}, czyli przy znaczniku {{Tag|pre}}=== Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{ls2|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu: {{ŹródłoXml|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}} Zatem: <templatestyles src="Szablon:Znacznik/przykłady.css" /> ---- ; Przykład pierwszy {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;font-family:sans-serif;font-size:1.2em;line-height:1.4em;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;font-family:sans-serif;font-size:1.2em;line-height:1.4em;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład drugi {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa{{=}}czcionka}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa=czcionka}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład trzeci {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;color:darkslategray;|klasa{{=}}czcionka|id{{=}}przykład2}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;color:darkslategray;|klasa=czcionka|id=przykład2}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład czwarty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|klasa{{=}}tło obramowanie|id{{=}}przykład1}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|klasa=tło obramowanie|id=przykład1}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład piąty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|klasa{{=}}czcionka kolor tło obramowanie}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|klasa=czcionka kolor tło obramowanie}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład szósty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|id{{=}}przykład}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|id=przykład}} {{Lorem ipsum}} {{Pre koniec}} ---- * Widzimy, że w sześciu przykładach powyższych różne są przykłady, ale wynik powinien być ten sam, ale one powinny obrazują to samo, czyli widzimy, że niezależnie jak rozplanujemy style pomiędzy style {{Code|style}}, klasy {{Code|class}} i identyfikatory {{Code|id}}, wynik nie zawsze otrzymujemy ten sam, tak się dzieje, bo szablon ten ma pewne swoje wbudowane style. Zbadaj to na przeglądarce internetowej. === Tabelka z przykładami dla szablonów {{s|Pre}}=== Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{ls|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu: {{ŹródłoKodu|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}} Zatem: <templatestyles src="Szablon:Znacznik/przykłady.css" /> {{Tabela przykładów użycia szablonów| {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=font-size:1.2em;color:darkslategray;background-color:lightyellow;border:darkblue 1px solid;}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=color:darkslategray;background-color:lightyellow;border:darkblue 1px solid;|3=klasa=czcionka}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=color:darkslategray;|3=klasa=czcionka|4=id=przykład2}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=klasa=tło obramowanie|3=id=przykład1}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=klasa=czcionka kolor tło obramowanie}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=id=przykład}} }} Widzimy w powyższej tabelce, że niezależnie jak napiszemy znacznik {{Tag|pre}}, to wynik powinniśmy otrzymujemy taki sam, a to rozplanowanie stylów zrobiliśmy poprzez rozdzielenie stylów pomiędzy atrybutami {{Code|style}}, {{Code|class}} lub {{Code|id}}, a tak się nie dzieje, bo ten szablon ma pewne wbudowane style. * Przykłady z szablonami: {{s|Pre start}} i {{s|Pre koniec}}, są podobne, co z szablonem {{S|Pre}}. Zbadaj to na przeglądarce internetowej. == Błędy == Błędy należy zgłaszać na stronie {{kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Zawartość, która ma stać się kodem preformatowanym.", "type": "string", "required": true }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły do klasy kaskadowych arkuszy stylów CSS.", "type": "string" }, "atrybuty": { "description": "Atrybuty znacznika, inne niż: id, style i class.", "type": "string" }, "id": { "description": "Unikalny identyfikator.", "type": "string", "suggested": true } }, "description": "Szablon zamieniający tekst w kod preformatowany w elemencie blokowym: <pre>...</pre>, a ten tekst jest zawartością dla szablonów: {{Pre}}, {{PreLine}}, {{PreBody}}, {{PreBody2}} i {{PreLineBody}} a jest pomiędzy nimi dla szablonów: {{Div start}} i {{Div koniec}}. Szablon {{Pre koniec}} nie przyjmuje żadnych parametrów.", "paramOrder": [ "1", "id", "styl", "klasa", "atrybuty" ] } </templatedata> == Zobacz też == * {{s|Znacznik}} - o który szablon {{s|Pre}} jest zbudowany, zbudowanego o znacznik: {{Tag|pre}}, elementu blokowego, o tekście umieszczanego wewnątrz tego szablonu, * Szablony: {{s|Znacznik start}} (otwierający) i {{s|Znacznik koniec}} (zamykający) - szablon, o których te szablony kolejno: {{s|Div start}} i {{s|Div koniec}}, są zbudowany, gdzie tekst jest umieszczany między nimi. {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony do formatowania tekstu | Szablony kontenerów | Szablony ramek tworzące kod HTML | Szablony ramek wyświetlające kod komputerowy | Szablony specjalne | Szablony znaczników }} </includeonly> poeku4f5483gbblgqczx9fa072vrbrb 538724 538723 2026-04-01T00:04:15Z Persino 2851 /* Przykłady rozszerzone, część pierwsza */ 538724 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon umożliwia umieszczenie modyfikowalnego tekstu pomiędzy znacznikami: {{Tag|pre}} (jest to element blokowy) - (tagi języka HTML), za pomocą szablonów: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}} lub {{s|Pre start}} i {{s|Pre koniec}}, oparty na obsłudze identyfikatorów: {{Code|id}}, styli: {{Code|style}} (właściwości i ich zawartości przedstawiający język CSS), klas: {{Code|class}} (reguł w kaskadowych arkuszach stylów) i atrybutów (inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}), elementu HTML. Tekst jest umieszczany wewnątrz szablonu {{s|Pre}} pomiędzy znacznikami: {{Tag|pre}} lub pomiędzy szablonami: {{s|Pre start}} i {{s|Pre koniec}}, pomiędzy tymi samymi znacznikami. Przy czym identyfikatory ({{Code|id}}), style ({{Code|style}}), klasy ({{Code|class}}) i atrybuty podaje się tylko w znaczniku otwierającym. W szablonach: {{s|Pre}}, {{s|PreBody}} i {{s|PreBody2}} oraz {{s|Pre start}} i {{s|Pre koniec}}, wiele spacji nie są skracane do jednej spacji, chyba, że użyjemy: {{Parametr|styl|white-space:pre-line}}, aby nie dodawać nowego stylu przygotowano specjalne szablony: {{s|PreLine}} i {{s|PreLineBody}}. Użycie: tego szablonu, ale nie wersji otwierającej i zamykającej, gdy w kodzie znajdują się znaki "=", to w nim należy stosować szablon {{s|{{=}}}}. == Opis parametrów == Szablony: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, przyjmują argumenty, którego wartości wraz z odpowiednimi nazwami, oprócz zmiennej {{Code|1}}, w nim, wsadza on do tagu, coś w rodzaju: {{Tag|tag|parametry=nazwa="wartość"}}, obsługiwanego przez niego znacznika, prze którego on jest oparty, a oto lista tych zmiennych dla poszczególnych ich podane w poniższych rozdziałach. === Szablon {{s|Pre}} === ; Wywołanie {{Pre|{{s|Pre|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreBody}} === ; Wywołanie {{Pre|{{s|PreBody|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreBody2}} === ; Wywołanie {{Pre|{{s|PreBody2|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreLine}} === ; Wywołanie {{Pre|{{s|PreLine|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|PreLineBody}} === ; Wywołanie {{Pre|{{s|PreLineBody|1{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|1}} - zawartość pomiędzy znacznikami tekstu do preformatowania - wymagany, * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny. * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|Pre start}} === ; Wywołanie {{Pre|{{s|Pre start|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}} ; Parametry: * {{Code|id}} - unikatowy identyfikator znacznika - sugerowany, * {{Code|klasa}} - reguły do klasy do tekstu do preformatowania - opcjonalny, * {{Code|styl}} - styl CSS tekstu do preformatowania - opcjonalny, * {{Code|atrybuty}} - atrybuty znacznika, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}} - opcjonalny. === Szablon {{s|Pre koniec}} === ; Wywołanie {{Pre|{{s|Pre koniec}}}} ; Parametry * Szablon {{s|Pre koniec}} nie przyjmuje parametrów. ===Dalsze rozważania === A szablony: {{s|Pre start}} (otwierający) i {{s|Pre koniec}} (zamykający) albo {{s|Pre}} lub {{s|PreLine}}, umieszczają tekst do przepreformatowania pomiędzy znacznikami <nowiki><pre></pre></nowiki>. Te szablony są tak napisane, by dało się umieścić pomiędzy tymi znacznikami tekst modyfikowalny, a normalnie bez nich mamy kod: {{Pre|<nowiki><pre>Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.</pre></nowiki>}} a jego wywołanie jest: <pre>Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.</pre> A po użyciu szablonów: {{s|Pre start}} i {{s|Pre koniec}} albo {{s|Pre}} lub {{s|PreBody}} ewentualnie {{s|PreBody2}} bądź {{s|PreLine}} lub {{s|PreLineBody}}, już tak nie jest. == Wikikod szablonów: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}}, {{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, zbudowanych za pomocą szablonu znaczników (kombajnów) == Szablony: {{s|Pre}}, {{s|PreBody}}, {{s|PreBody2}}, {{s|PreLine}},{{s|PreLineBody}}, {{s|Pre start}} i {{s|Pre koniec}}, mają kod w zależności od znacznika {{s|Znacznik}}, {{s|Znacznik start}} lub {{s|Znacznik koniec}}, przedstawiające się: ; Szablon {{s|Pre}} {{PreWikikod|Pre}} ; Szablon {{s|PreBody}} {{PreWikikod|PreBody}} ; Szablon {{s|PreBody2}} {{PreWikikod|PreBody2}} ; Szablon {{s|PreLine}} {{PreWikikod|PreLine}} ; Szablon {{s|PreLineBody}} {{PreWikikod|PreLineBody}} ; Szablon {{s|Pre start}} {{PreWikikod|Pre start}} ; Szablon {{s|Pre koniec}} {{PreWikikod|Pre koniec}} == Przykłady == === Przykłady podstawowe === * Przykład pierwszy: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} * Przykład drugi: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.|styl{{=}}font-weight:bold;}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.|styl=font-weight:bold;}} === Przykłady rozszerzone, część pierwsza === * Przykład pierwszy: {{Pre|{{s|Pre|{{s|PreBody2|styl{{=}}font-family:inherit;|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki> .}}}}}} A jego wynik za pomocą szablonu {{s|Pre}}: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} ---- A za pomocą szablon {{s|PreBody}}: {{PreBody|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreBody2}}: {{PreBody2|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreLine}}: {{PreLine|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} A za pomocą szablon {{s|PreLineBody}}: {{PreLineBody|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.}} === Przykłady rozszerzone, część druga === * Przykład drugi: {{s|Pre|Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.|styl{{=}}font-weight:bold;}}, a jego wynik: {{Pre|Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.|styl=font-weight:bold;}} * Przykład trzeci: {{s|Pre start}}Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.{{s|Pre koniec}}, a jego wynik: {{Pre start}}Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.{{Pre koniec}} * Przykład czwarty: {{s|Pre start|styl{{=}}font-weight:bold;}}Oto jest korzeń nazwy tej strony: <nowiki>{{ROOTPAGENAME}}</nowiki>.{{s|Pre koniec}}, a jego wynik: {{Pre start|styl=font-weight:bold;}}Oto jest korzeń nazwy tej strony: {{ROOTPAGENAME}}.{{Pre koniec}} === Szablony preformatujące tekst, z przykładami, dla szablonu otwierającego {{s|Pre start}} i zamykającego {{s|Pre koniec}}, czyli przy znaczniku {{Tag|pre}}=== Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{ls2|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu: {{ŹródłoXml|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}} Zatem: <templatestyles src="Szablon:Znacznik/przykłady.css" /> ---- ; Przykład pierwszy {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;font-family:sans-serif;font-size:1.2em;line-height:1.4em;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;font-family:sans-serif;font-size:1.2em;line-height:1.4em;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład drugi {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa{{=}}czcionka}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa=czcionka}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład trzeci {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;color:darkslategray;|klasa{{=}}czcionka|id{{=}}przykład2}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;color:darkslategray;|klasa=czcionka|id=przykład2}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład czwarty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|klasa{{=}}tło obramowanie|id{{=}}przykład1}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|klasa=tło obramowanie|id=przykład1}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład piąty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|klasa{{=}}czcionka kolor tło obramowanie}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|klasa=czcionka kolor tło obramowanie}} {{Lorem ipsum}} {{Pre koniec}} ; Przykład szósty {{Pre| {{s|Pre start|styl{{=}}width:800px;padding:5px;|id{{=}}przykład}} {{s|Lorem ipsum}} {{s|Pre koniec}} }} ; Wynik {{Pre start|styl=width:800px;padding:5px;|id=przykład}} {{Lorem ipsum}} {{Pre koniec}} ---- * Widzimy, że w sześciu przykładach powyższych różne są przykłady, ale wynik powinien być ten sam, ale one powinny obrazują to samo, czyli widzimy, że niezależnie jak rozplanujemy style pomiędzy style {{Code|style}}, klasy {{Code|class}} i identyfikatory {{Code|id}}, wynik nie zawsze otrzymujemy ten sam, tak się dzieje, bo szablon ten ma pewne swoje wbudowane style. Zbadaj to na przeglądarce internetowej. === Tabelka z przykładami dla szablonów {{s|Pre}}=== Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{ls|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu: {{ŹródłoKodu|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}} Zatem: <templatestyles src="Szablon:Znacznik/przykłady.css" /> {{Tabela przykładów użycia szablonów| {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=font-size:1.2em;color:darkslategray;background-color:lightyellow;border:darkblue 1px solid;}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=color:darkslategray;background-color:lightyellow;border:darkblue 1px solid;|3=klasa=czcionka}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=styl=color:darkslategray;|3=klasa=czcionka|4=id=przykład2}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=klasa=tło obramowanie|3=id=przykład1}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=klasa=czcionka kolor tło obramowanie}} {{Przykład użycia szablonu w tabeli|tytuł=Pre|Oto jest tekst do analizy|2=id=przykład}} }} Widzimy w powyższej tabelce, że niezależnie jak napiszemy znacznik {{Tag|pre}}, to wynik powinniśmy otrzymujemy taki sam, a to rozplanowanie stylów zrobiliśmy poprzez rozdzielenie stylów pomiędzy atrybutami {{Code|style}}, {{Code|class}} lub {{Code|id}}, a tak się nie dzieje, bo ten szablon ma pewne wbudowane style. * Przykłady z szablonami: {{s|Pre start}} i {{s|Pre koniec}}, są podobne, co z szablonem {{S|Pre}}. Zbadaj to na przeglądarce internetowej. == Błędy == Błędy należy zgłaszać na stronie {{kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Zawartość, która ma stać się kodem preformatowanym.", "type": "string", "required": true }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły do klasy kaskadowych arkuszy stylów CSS.", "type": "string" }, "atrybuty": { "description": "Atrybuty znacznika, inne niż: id, style i class.", "type": "string" }, "id": { "description": "Unikalny identyfikator.", "type": "string", "suggested": true } }, "description": "Szablon zamieniający tekst w kod preformatowany w elemencie blokowym: <pre>...</pre>, a ten tekst jest zawartością dla szablonów: {{Pre}}, {{PreLine}}, {{PreBody}}, {{PreBody2}} i {{PreLineBody}} a jest pomiędzy nimi dla szablonów: {{Div start}} i {{Div koniec}}. Szablon {{Pre koniec}} nie przyjmuje żadnych parametrów.", "paramOrder": [ "1", "id", "styl", "klasa", "atrybuty" ] } </templatedata> == Zobacz też == * {{s|Znacznik}} - o który szablon {{s|Pre}} jest zbudowany, zbudowanego o znacznik: {{Tag|pre}}, elementu blokowego, o tekście umieszczanego wewnątrz tego szablonu, * Szablony: {{s|Znacznik start}} (otwierający) i {{s|Znacznik koniec}} (zamykający) - szablon, o których te szablony kolejno: {{s|Div start}} i {{s|Div koniec}}, są zbudowany, gdzie tekst jest umieszczany między nimi. {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony do formatowania tekstu | Szablony kontenerów | Szablony ramek tworzące kod HTML | Szablony ramek wyświetlające kod komputerowy | Szablony specjalne | Szablony znaczników }} </includeonly> h0ypt2qttkikzbilq7yr88v349ep9ti Moduł:Linki 828 56416 538700 535792 2026-03-31T21:32:59Z Persino 2851 538700 Scribunto text/plain local p={}; p["PrzetłumaczZnakZastępczyNaStronę"]=function(nazwa_przestrzeni_nazw,nazwa_strony,kod_jezyka,kod_projektu,hash) local czy_pusta_nazwa_przestrzeni_nazw=mw.ustring.match(nazwa_przestrzeni_nazw,"^([%s_:]*)$"); local czy_pusta_nazwa_strony=mw.ustring.match(nazwa_strony,"^([%s_:]*)#.*$") or mw.ustring.match(nazwa_strony,"^([%s_:]*)$"); if(not czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony)then local tabglownestronyprojektu=mw.loadData("Module:Nazwy/przestrzenie").tabnp; local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"](nazwa_przestrzeni_nazw); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(not czy_biezaca)then local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} local nazwa_bazowa_strony=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_bazowa_strony)then local nazwa_strony_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=nazwa_bazowa_strony, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, ["kod języka bazy"]="pl", ["kod projektu bazy"]=(nazwa_kanoniczna_nazwy_przestrzeni_nazw~="Project")and "w" or "b", } if(nazwa_strony_na_innym_projekcie)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_na_innym_projekcie,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; else return nazwa_bazowa_strony,false; end; end; else local nazwy_modul=require("Module:Nazwy"); if(hash)then local nazwy_modul=require("Module:Nazwy"); local tabela_nazw={}; local prze_bierzacej_strony=nazwy_modul["NAZWAPRZESTRZENI"](nil,tabela_nazw); local nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,}; if(nazwa_przestrzeni_nazw==prze_bierzacej_strony)then return nazwy_modul["PEŁNANAZWASTRONY"](nil,tabela_nazw),true; end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.Np{["nazwa"]=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak"} local nazwa_strony_glownych_stron_projektu=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_strony_glownych_stron_projektu)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_glownych_stron_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; end; elseif czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony 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)and(hash))then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"](),true; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local tablokalnesiostrzane=wiki_interwiki_modul.tablica_lokalne_siostrzane; if(tablokalnesiostrzane[kod_projektu])then local wiki_modul=require("Module:Wiki"); local pudelko_modul=require("Module:Pudełko"); local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"](); if(not czy_biezaca)then local nazwa_strony_glownej_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=strona_glowna_tego_projektu, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, } if(nazwa_strony_glownej_na_innym_projekcie)then return nazwa_strony_glownej_na_innym_projekcie,false; end; else return strona_glowna_tego_projektu,false; end; end; end; return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; p["PoprawLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); z_kodowaniem=parametry_modul.CzyTak(z_kodowaniem); local function pojedynczy_link(link) local strona=mw.ustring.match(link,"^%[%[:?([^%[%]|]*)"); local nazwa=mw.ustring.match(link,"^%[%[[^|]*|([^%[%]]*)%]%]$") or strona; local z_kodowaniem_temp=(mw.ustring.match(strona,"%%%x%x")and true or false) or z_kodowaniem; link=p.TworzenieWikiLinku(nil,nil,nil,strona,nil,nazwa,nil,nil,false,nil,nil,nil,nil,nil,nil,nil,z_kodowaniem_temp); return link; end; return mw.ustring.gsub(argument_pierwszy,"(%[%[[^%[%]]*%]%])",function(s)return pojedynczy_link(s);end); end; p["WydobądźLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc,_=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); local specjalne_modul=require("Module:Specjalne"); wartosc=specjalne_modul["UsuńKomentarze"](wartosc); wartosc=specjalne_modul["UsuńSzablonyStylów"](wartosc); wartosc=specjalne_modul["UsuńZnaczniki"](wartosc); wartosc=specjalne_modul["UsuńKategorie"](wartosc); wartosc=specjalne_modul["UsuńWywołaniaPlików"](wartosc); wartosc=specjalne_modul["UsuńInterwiki"](wartosc); local linki_modul=require("Module:Linki"); wartosc=linki_modul["PoprawLinki"]{wartosc,z_kodowaniem}; return wartosc; end; function p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem) if(not czy_url)then local parametry_modul=require("Module:Parametry"); local czy_klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku); local czy_kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku); local czy_kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku); local czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); local czy_po=parametry_modul.CzyTak(po); if(not czy_naglowek_strony)then if(czy_nazwa_strony_linku)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; local strona_zmienna_tymczasowa=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu) local naglowek_zmienna_tymczasowa=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); if(strona_zmienna_tymczasowa and naglowek_zmienna_tymczasowa)then nazwa_strony_linku=strona_zmienna_tymczasowa; naglowek_zmienna_tymczasowa=parametry_modul["Odstępy"]{[1]=naglowek_zmienna_tymczasowa,[2]="tak",[3]="tak",}; if(parametry_modul.CzyTak(naglowek_zmienna_tymczasowa))then naglowek_strony=naglowek_zmienna_tymczasowa; czy_naglowek_strony=true; end; end; end; else naglowek_strony=parametry_modul["Odstępy"]{[1]=naglowek_strony,[2]="tak",[3]="tak",}; if(not parametry_modul.CzyTak(naglowek_strony))then czy_naglowek_strony=false; naglowek_strony=nil; end; end; --- local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local interwikimap=wiki_interwiki_modul.interwikimap; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local wiki_modul=require("Module:Wiki"); local kod_jezyka_uzyskany_poczatkowy,kod_projektu_uzyskany_poczatkowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); 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(not kod_jezyka_uzyskany_poczatkowy or not kod_projektu_uzyskany_poczatkowy)then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_uzyskany_poczatkowy or kod_jezyka_tego_projektu; kod_projektu_uzyskany_poczatkowy=kod_projektu_uzyskany_poczatkowy or kod_projektu_tego_projektu; end; local czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; local tablica_kodow={}; local kod_jezyka_koncowy;local kod_projektu_koncowy; --------------------------------------------------------------------- kod_jezyka_koncowy=kod_jezyka_uzyskany_poczatkowy; kod_projektu_koncowy=kod_projektu_uzyskany_poczatkowy; --------------------------------------------------------------------- local kod_jezyka_poczatkowy,kod_projektu_poczatkowy; if(czy_pelna_nazwa_strony_prawidlowa)then nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,kod_jezyka_poczatkowy,kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,bez_przetwarzania_kodow and tablica_kodow or nil); czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; end; ---- if(not nazwa)then nazwa=nazwa_strony_linku..(czy_naglowek_strony and ("#"..naglowek_strony) or ""); nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," "); czy_nazwa=parametry_modul.CzyTak(nazwa); end local ciag_tablica_kodow=""; if(bez_przetwarzania_kodow)then if(kod_jezyka_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_poczatkowy; else ciag_tablica_kodow=kod_jezyka_poczatkowy; end; elseif(kod_projektu_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_projektu_uzyskany_poczatkowy=kod_projektu_poczatkowy; else ciag_tablica_kodow=kod_projektu_poczatkowy; end; end; local ciag_tablica_kodow_zmienna_tymczasowa=table.concat(tablica_kodow,":"); ciag_tablica_kodow=ciag_tablica_kodow..(((ciag_tablica_kodow~="")and(ciag_tablica_kodow_zmienna_tymczasowa~=""))and ":" or "")..ciag_tablica_kodow_zmienna_tymczasowa; else kod_jezyka_uzyskany_poczatkowy=kod_jezyka_koncowy; kod_projektu_uzyskany_poczatkowy=kod_projektu_koncowy; end; local nazwy_modul=require("Module:Nazwy"); local czy_dyskusja=parametry_modul.CzyTak(dyskusja); local pierwsza_litera=((czy_pelna_nazwa_strony_prawidlowa)and(not czy_dyskusja)) and mw.ustring.match(nazwa_strony_linku,"^(%a)") or nil; local tabela_nazw={}; local nazwaprzestrzeni=czy_pelna_nazwa_strony_prawidlowa and ((not czy_dyskusja)and nazwy_modul["NAZWAPRZESTRZENI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy},tabela_nazw) or nazwy_modul["PRZESTRZEŃDYSKUSJI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw)) or ""; local nazwastrony=czy_pelna_nazwa_strony_prawidlowa and nazwy_modul["NAZWASTRONY"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) or ""; local linki_modul=require("Module:Linki"); local strona_inna_zmienna_tymczasowa,czy_strona_lokalna=linki_modul["PrzetłumaczZnakZastępczyNaStronę"](nazwaprzestrzeni,nazwastrony,kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); local czy_pelna_nazwa_strony_prawidlowa=((czy_pelna_nazwa_strony_prawidlowa)and(parametry_modul["CzyTakCiąg"](strona_inna_zmienna_tymczasowa) and not mw.ustring.match(strona_inna_zmienna_tymczasowa,"^[%s_:]+$")) or strona_inna_zmienna_tymczasowa); local function TabelaNazw()tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki;return tabela_nazw_temp;end; if(nazwastrony=="")then local tabela_nazw=TabelaNazw(); local nazwa_strony=nazwy_modul["NAZWASTRONY"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) local techniczne_modul=require("Module:Techniczne"); local nowa_nazwa_strony=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](nazwa_strony); if(nazwa)then local f,ile=mw.ustring.gsub(nazwa,"%%s",function()return nil;end); if(ile==1)then nazwa=mw.ustring.format(nazwa,nowa_nazwa_strony) or nil; elseif(ile==2)then local nowa_nazwa_przestrzeni=nazwy_modul[(czy_dyskusja) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw); if(tabela_nazw.czy_aktualna_wiki)then nowa_nazwa_przestrzeni=nazwy_modul.Np{nazwa=nowa_nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nowa_nazwa_przestrzeni=nazwy_modul.NpDane{nazwa=nowa_nazwa_przestrzeni,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or nowa_nazwa_przestrzeni; end; nazwa=mw.ustring.format(nazwa,nowa_nazwa_przestrzeni,nowa_nazwa_strony) or nil; end; end; end; strona_inna_zmienna_tymczasowa=strona_inna_zmienna_tymczasowa or nazwa_strony_linku; local function NazwaStronyDyskusji(strona) if(czy_dyskusja and czy_pelna_nazwa_strony_prawidlowa)then return nazwy_modul["NAZWASTRONYDYSKUSJI"]({[1]=strona,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()); end; return strona; end; local strona_zmienna_tymczasowa=NazwaStronyDyskusji(strona_inna_zmienna_tymczasowa); nazwa_strony_linku=((not czy_strona_lokalna or ((czy_dyskusja)and(nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw())~=nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()))))and strona_zmienna_tymczasowa or ""); nazwa_strony_linku=pierwsza_litera and mw.ustring.gsub(nazwa_strony_linku,"^["..mw.getContentLanguage():ucfirst(pierwsza_litera)..mw.getContentLanguage():lcfirst(pierwsza_litera).."]",pierwsza_litera) or nazwa_strony_linku; czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local function BiezacaWikiDwukropek() local czy_biezace_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; local czy_wstawiac_dwukropek; if(czy_biezace_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((nazwaprzestrzeni==nazwy_np_modul.Category)or(nazwaprzestrzeni==nazwy_np_modul.File))then czy_wstawiac_dwukropek=true; end; end; return czy_wstawiac_dwukropek; end; local pudelko_modul=require("Module:Pudełko"); local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane; local projekty_nie_en=jezykowe_projekty[kod_projektu_uzyskany_poczatkowy]; local czy_kod_jezyka_uzyskany_poczatkowy=(kod_jezyka_uzyskany_poczatkowy~=kod_jezyka_tego_projektu); local czy_kod_projektu_uzyskany_poczatkowy=(kod_projektu_uzyskany_poczatkowy~=kod_projektu_tego_projektu); local html_modul=require("Module:Html"); local function AdresLinku() local kody_poczatkowe=(not projekty_nie_en and (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or(czy_kod_jezyka_uzyskany_poczatkowy and kod_jezyka_uzyskany_poczatkowy..":"..(czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or ""))); local tablica_kodow=kody_poczatkowe..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or ""); local czy_wstawiac_dwukropek=((tablica_kodow~="")and (projekty_nie_en and (czy_kod_jezyka_uzyskany_poczatkowy and ":" or "") or "") or (BiezacaWikiDwukropek() and ":" or "")); local strona;local parametry;local naglowek; if(czy_nazwa_strony_linku)then strona=html_modul.EncodeElementyAdresuStrony(nazwa_strony_linku,nil,z_kodowaniem); end; if(czy_parametry_strony)then parametry=html_modul.EncodeElementyAdresuStrony(parametry_strony,true,z_kodowaniem); parametry="?"..parametry; end; if(czy_naglowek_strony)then naglowek=html_modul.EncodeElementyAdresuStrony(naglowek_strony,nil,z_kodowaniem); naglowek="#"..naglowek; end; local zmienna_linkowa=tablica_kodow..(strona or "") ..(parametry or "")..(naglowek or ""); return zmienna_linkowa, czy_wstawiac_dwukropek; end; nazwa=nazwa and mw.ustring.gsub(nazwa,"^[%s_]*","") or nil; nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]*$","") or nil; --nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]+"," ") or nil; if(czy_ogolne and not czy_nazwa)then if(parametry_modul.CzyTak(wyswietl))then nazwa=strona_zmienna_tymczasowa; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); else if((czy_pelna_nazwa_strony_prawidlowa)and(nazwastrony~=""))then nazwa=nazwastrony; else nazwa=nazwy_modul["NAZWASTRONY"]{[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_uzyskany_poczatkowy,["kod projektu"]=kod_projektu_uzyskany_poczatkowy,}; end; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); end end; local zmienna_linkowa; local aktywny; if(not czy_wewnetrzny_z_fullurl)then local czy_wstawiac_dwukropek; zmienna_linkowa,czy_wstawiac_dwukropek=AdresLinku(); zmienna_linkowa=mw.ustring.gsub(zmienna_linkowa,"[%s_]+"," "); local czy_za=parametry_modul.CzyTak(za); if(czy_za or(nazwa and (nazwa~=zmienna_linkowa)))then zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa..(czy_nazwa and "|"..nazwa..(czy_za and za or "") or (czy_za and ("|"..zmienna_linkowa..za) or "")).."]]"..(czy_po and po or ""); else zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa.."]]"..(czy_po and po or ""); end aktywny=false; else aktywny=true; local serwer; local projekt; if(projekty_nie_en)then for kod_specjalny_projektu,kod_projektu_interwiki in pairs(wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie)do if(kod_projektu_uzyskany_poczatkowy==kod_projektu_interwiki)then projekt=kod_specjalny_projektu; end; end; end; local function Protocol(kod_projektu) local interwikimap=wiki_interwiki_modul.interwikimap; local url=interwikimap[kod_projektu]; if(not url)then return "";end; return mw.ustring.match(url,"^([^/]*)//"); end; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local nazwy_np_modul=require("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local czy_specjalna=(nazwaprzestrzeni==nazwy_np_modul.Special); local ciag_tablica_kodow_zmienna_tymczasowa=mw.ustring.gsub(strona_zmienna_tymczasowa,"[%s_]+","_"); if(((projekt)and(czy_parametry_strony)and(czy_specjalna))or((projekt)and(wersja_linku=="w")))then local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony)and(czy_specjalna))or((not projekty_nie_en)and(wersja_linku=="w")))then local techniczne_modul=require("Module:Techniczne"); local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local serwer=mw.ustring.match(wiki_nie_jezykowe,"^([^/]*//[^/]*)") local adres=serwer.."/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((projekt)and(czy_parametry_strony))or((projekt)and(wersja_linku=="wiki")))then local strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"[_%s]+","_"); local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/wiki/"..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and " "..nazwa..(parametry_modul.CzyTak(za) and za or "") or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony))or((not projekty_nie_en)and(wersja_linku=="wiki")))then local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local strona_zmienna_tymczasowa,_=mw.ustring.gsub(ciag_tablica_kodow_zmienna_tymczasowa,"[_%s]+","_"); strona_zmienna_tymczasowa=((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; strona_zmienna_tymczasowa=html_modul.EncodeHtml(strona_zmienna_tymczasowa); strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"([%%])(%d+)","%%%%%2"); strona_zmienna_tymczasowa,_=mw.ustring.gsub(wiki_nie_jezykowe,"$1",strona_zmienna_tymczasowa); local adres=strona_zmienna_tymczasowa..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); else local pudelko_modul=require("Module:Pudełko"); zmienna_linkowa=(parametry_modul.CzyTak(klucz_projektu)and ((not(klucz_projektu==pudelko_modul["Klucz projektu tego projektu"]()))and (klucz_projektu..":")or "" ) or ((parametry_modul.CzyTak(kod_jezyka_uzyskany_poczatkowy)and ((not(kod_jezyka_uzyskany_poczatkowy==pudelko_modul["Kod języka tego projektu"]()))and(kod_jezyka_uzyskany_poczatkowy..":")or "") or "")..(parametry_modul.CzyTak(kod_projektu_uzyskany_poczatkowy)and ((not(kod_projektu_uzyskany_poczatkowy==pudelko_modul["Kod projektu tego projektu"]()))and(kod_projektu_uzyskany_poczatkowy..":")or "") or ""))) ..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; local strona=(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); local adres=tostring(mw.uri.fullUrl(zmienna_linkowa))..strona; zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); end; end; return zmienna_linkowa,kod_jezyka_koncowy,kod_projektu_koncowy,strona_zmienna_tymczasowa,czy_naglowek_strony,aktywny; else local parametry_modul=require("Module:Parametry"); local html_modul=require("Module:Html"); local czy_nazwa; if(not nazwa)then nazwa=mw.ustring.match(nazwa_strony_linku,"//[^/]*/(.*)$"); nazwa=html_modul.DecodeHtml(nazwa); czy_nazwa=parametry_modul.CzyTak(nazwa); else czy_nazwa=parametry_modul.CzyTak(nazwa); end; local czy_po=parametry_modul.CzyTak(po); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"[%s_]+","_"); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"//([^/]*)/(.*)$", function(s1,s2)return "//"..s1.."/"..html_modul.EncodeHtml(s2);end) local adres=nazwa_strony_linku..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "") ..(czy_naglowek_strony and "#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony)) or ""); local zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); return zmienna_linkowa,nil,nil,nazwa_strony_linku,czy_naglowek_strony,false; end; end; function p.TworzLinkBezPrzetwarzania(klucz_projektu,kod_jezyka,kod_projektu,strona,naglowek,nazwa,za,po,z_kodowaniem) local parametry_modul=require("Module:Parametry"); local adres=(parametry_modul.CzyTak(klucz_projektu)and (klucz_projektu..":") or ((parametry_modul.CzyTak(kod_jezyka)and (kod_jezyka..":") or "")..(parametry_modul.CzyTak(kod_projektu)and (kod_projektu..":") or ""))) ..strona..(parametry_modul.CzyTak(naglowek) and ("#"..naglowek) or ""); local html_modul=require("Module:Html"); adres=html_modul.AdresProjektuEncodeHtml(adres,z_kodowaniem); local wartosc="[[:"..adres..(parametry_modul.CzyTak(nazwa) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..(po and po or ""); return wartosc; end; function p.LinkWikidane(link,klucz_projektu,kod_jezyka,kod_projektu,strona,czy_naglowek,czy_url,czy_parametry,aktywny) local wiki_modul=require("Module:Wiki"); local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nagłówek"]=czy_naglowek,["url"]=czy_url,["parametry"]=czy_parametry,["aktywny"]=aktywny,}; local nazwy_modul=require("Module:Nazwy"); local spanramka=mw.html.create('span'); spanramka:addClass(klasa); spanramka:addClass("link"); local spacja=string.match(link," "); if(spacja)then spanramka:addClass("spacja"); end; spanramka:wikitext(link); return tostring(spanramka:allDone()); end; function p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem) local parametry_modul=require("Module:Parametry"); parametry_strony=czy_wewnetrzny_z_fullurl and parametry_strony or nil; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local html_modul=require("Module:Html"); nazwa_strony_linku=html_modul["TransformacjaKoduHtmlDoZnakuCiągu"](nazwa_strony_linku); local wartosc_parent,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,aktywny=p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem); if(parametry_modul.CzyTak(bez_znacznikow))then return wartosc_parent;end; return p.LinkWikidane(wartosc_parent,nil,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony,aktywny); end; function p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,naglowek,czy_link_url,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,__FUNKCJA) local nowa_nazwa_strony_linku; local czy_kreska_dolna;local hash;local prze_nie_main; local czy_strona_lokalna; if(not czy_analiza)then czy_kreska_dolna=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$") or mw.ustring.match(nazwa_strony_linku,":[%s_]*$"); hash=(not czy_kreska_dolna)and ((not czy_link_url) and mw.ustring.match(nazwa_strony_linku,"^[_%s]*#(.*)$") or nil) or (((czy_kreska_dolna)and(czy_link_url) and require("Module:Parametry").CzyTak(naglowek)) and naglowek or nil); if((czy_kreska_dolna)or(hash))then local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local miano_przestrzeni_nazw_maly=((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))and mw.ustring.lower(miano_przestrzeni_nazw) or miano_przestrzeni_nazw; if((not miano_przestrzeni_nazw_maly)or((miano_przestrzeni_nazw_maly=="")or(miano_przestrzeni_nazw_maly=="(main)")or(miano_przestrzeni_nazw_maly=="(główna)")))then miano_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); end; local nazwa_strony=nazwy_modul["NAZWASTRONY"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); if(nazwa_strony=="")then nowa_nazwa_strony_linku,czy_strona_lokalna=p["PrzetłumaczZnakZastępczyNaStronę"](miano_przestrzeni_nazw or "","",kod_jezyka,kod_projektu,hash); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; nowa_nazwa_strony_linku=__FUNKCJA(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main); return nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; end; p["GanerujSkładoweURL"] = function(args) local klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku; local miano_przestrzeni_nazw; local nazwa_strony_linku=args["strona"] or args["s"] or "_"; local html_modul=require("Module:Html"); nazwa_strony_linku=nazwa_strony_linku and html_modul.DecodeHtml(nazwa_strony_linku) or nil; local parametry_modul=require("Module:Parametry"); local w=args["wersja linku"] or args["w"]; local tab_w={ ["w"]=true, ["wiki"]=true, }; local wersja_linku=parametry_modul.CzyTak(w) and (tab_w[w] and w or nil) or ""; local _; local strony_modul=require("Module:Strony"); local czy_url=strony_modul.SprawdzanieURL(nazwa_strony_linku); local parametry_strony;local naglowek_strony;local nazwa;local po;local po;local za; nazwa=args["nazwa"] or args["n"]; po=args["po"] or args["p"]; za=args["za"] or args["z"]; local function DaneStrony(nazwa_strony_linku_parametr,adres) if(parametry_modul.CzyTak(nazwa_strony_linku_parametr))then if(mw.ustring.match(nazwa_strony_linku_parametr,"^/wiki/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/wiki/",""); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); elseif(mw.ustring.match(nazwa_strony_linku_parametr,"^/w/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/w/",""); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); local nazwa_strony_jednostki,parametry_strony_jednostki=html_modul["NazwaStronyZParametrówStronyAdresu"](parametry_strony,true); parametry_strony=parametry_strony_jednostki or parametry_strony; nazwa_strony_linku_parametr=nazwa_strony_jednostki or nazwa_strony_linku_parametr; else nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/(.*)$","%1"); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); end; else if((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku))or(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)))then if((not adres)or(mw.ustring.match(adres,"/$1$")))then local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku_parametr=pudelko_modul["Nazwa strony głównej projektu 2"]{[1]=kod_jezyka_do_projektu_linku,[2]=kod_projektu_do_projektu_linku,} or ""; end; end; end; parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); --nazwa=args["nazwa"] or args["n"]; local klucz_projektu_do_projektu_linku_temp=args["klucz projektu"] or args["k"]; klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku_temp) and (klucz_projektu_do_projektu_linku_temp) or klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku_temp=args["kod języka"] or args["kj"]; kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku_temp) and (kod_jezyka_do_projektu_linku_temp) or kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku_temp=args["kod projektu"] or args["kp"]; kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku_temp) and (kod_projektu_do_projektu_linku_temp) or kod_projektu_do_projektu_linku; nazwa_strony_linku=nazwa_strony_linku_parametr; czy_url=false; end; if(not czy_url)then local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["f"]; nazwa_strony_linku=parametry_modul["CzyTakCiąg"](miano_przestrzeni_nazw) and miano_przestrzeni_nazw..":"..nazwa_strony_linku or nazwa_strony_linku; DaneStrony(nazwa_strony_linku); else local html_modul=require("Module:Html"); local nazwa_strony_bez_protokolu=html_modul["UrlBezProtokołu"](nazwa_strony_linku); local serwer,nazwa_strony=html_modul["URLStrona"](nazwa_strony_bez_protokolu); local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local function SerwerWiki(serwer) local kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.(%w+)%.org"); if((not kod_jezyka_zmienna_tymczasowa)or(not kod_specjalny_projektu))then kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.[mM]%.(%w+)%.org"); end; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local kod_projektu=interwikisiostrzaneangielskie[kod_specjalny_projektu]; local kod_jezyka=kod_jezyka_zmienna_tymczasowa and (mw.language.isKnownLanguageTag(kod_jezyka_zmienna_tymczasowa) and kod_jezyka_zmienna_tymczasowa or nil) or nil; return kod_jezyka,kod_projektu; end; local function JezykoweLubAngielskieProjekty(serwer_portalu) local kod_jezyka,kod_projektu=SerwerWiki(serwer_portalu); if(kod_jezyka and kod_projektu)then kod_jezyka_do_projektu_linku=kod_jezyka; kod_projektu_do_projektu_linku=kod_projektu; klucz_projektu_do_projektu_linku=nil; DaneStrony(nazwa_strony); return true; else local pozajezykoweprojektysiostrzane=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane; local techniczne_modul=require("Module:Techniczne"); for kod, url in pairs(pozajezykoweprojektysiostrzane)do local adres=html_modul["UrlBezProtokołu"](url); local serwer_portalu,nazwa_strony_portalu=html_modul["URLStrona"](adres); if(serwer_portalu)then if((serwer_portalu==serwer)and((mw.ustring.match(nazwa_strony_portalu,"%$1"))or(nazwa_strony==nazwa_strony_portalu)))then kod_jezyka_do_projektu_linku=kod_jezyka or "en"; kod_projektu_do_projektu_linku=--[[kod_projektu or]] kod; local nazwa_strony_spreparowana=nil; if(not mw.ustring.match(adres,"/wiki/%$1$"))then if(mw.ustring.match(url,"[:/]$1$"))then local url_wzor=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](adres); url_wzor=mw.ustring.gsub(url_wzor,"(%%$1)$","(.-)"); nazwa_strony_spreparowana=mw.ustring.match(nazwa_strony_bez_protokolu,"^"..url_wzor.."$"); if(not nazwa_strony_spreparowana)then return false; end; end; end; DaneStrony(nazwa_strony_spreparowana or nazwa_strony,adres); return true; end; end; end; end; end; local function __FUNKCJA() if(mw.ustring.match(serwer,"^upload%.wikimedia%.org$"))then DaneStrony(nazwa_strony); nazwa_strony=nazwa_strony_linku; nazwa_strony_linku="Media:"..mw.ustring.match(nazwa_strony,"([^/]*)$"); local kod_projektu_do_projektu_linku2,kod_jezyka_do_projektu_linku2=mw.ustring.match(nazwa_strony,"^([^/]*)/([^/]*)/.*$"); kod_jezyka_do_projektu_linku=kod_jezyka_do_projektu_linku or kod_jezyka_do_projektu_linku2; kod_projektu_do_projektu_linku=kod_projektu_do_projektu_linku or kod_projektu_do_projektu_linku2; czy_url=false; else local juz_tak=JezykoweLubAngielskieProjekty(serwer); if(not juz_tak)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); nazwa_strony_linku=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); end; end; end; __FUNKCJA(); end; local czy_wewnetrzny_z_fullurl; if(not parametry_modul.CzyTak(parametry_strony))then if(wersja_linku=="")then if((klucz_projektu_do_projektu_linku)or(kod_jezyka_do_projektu_linku)or(kod_projektu_do_projektu_linku))then czy_wewnetrzny_z_fullurl=false; elseif(not czy_url)then czy_wewnetrzny_z_fullurl=false; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; return klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url; end; p["Link wewnętrzny"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local klucz_projektu_do_projektu_linku=args["klucz projektu"]; local kod_jezyka_do_projektu_linku=args["kod języka"]; local kod_projektu_do_projektu_linku=args["kod projektu"]; local nazwa_strony_linku=args["strona"] or "_"; local nazwa=args["nazwa"]; local czy_nazwa=parametry_modul.CzyTak(nazwa); nazwa=czy_nazwa and nazwa or nil; local po=args["po"]; local za=args["za"]; local naglowek_strony=args["nagłówek"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if(not czy_analiza)then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=czy_nazwa and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((not czy_naglowek)and(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$")))) or nil); if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek and naglowek_strony or hash,nazwa,za,po,nil,nil,nil,nil,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),czy_naglowek and naglowek_strony or hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony or hash or mw.ustring.match(nazwa_strony_linku,"#"),nil,nil); else return link; end; end; end; p["LinkURL"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if((not czy_analiza)and(not czy_url))then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=parametry_modul.CzyTak(nazwa) and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$"))) or nil); local function Bez_przetwarzania_lub_bez_znaczkow() if(parametry_modul.CzyTak(bez_przetwarzania))then local bez_znacznikow=parametry_modul.CzyTak(bez_znacznikow); local czy_parametry=parametry_modul.CzyTak(parametry_strony); local wartosc=((not czy_url)and((parametry_modul.CzyTak(klucz_projektu_do_projektu_linku)and (klucz_projektu_do_projektu_linku..":") or ((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku)and (kod_jezyka_do_projektu_linku..":") or "")..(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)and (kod_projektu_do_projektu_linku..":") or "")))..nowa_nazwa_strony_linku) or nil); local link; local po_linku=parametry_modul.CzyTak(po) and po or ""; if((not czy_url)and((czy_parametry)or(parametry_modul.CzyTak(wersja_linku))))then local adres=tostring(mw.uri.fullUrl(wartosc,"")); adres=((not parametry_modul.CzyTak(wersja_linku))or(wersja_linku=="wiki")) and adres or mw.ustring.gsub(adres,"/wiki/","/w/index.php?title=",1); local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ((((wersja_linku=="w")) and "&" or "?")..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") adres=adres..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; elseif(czy_url)then local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") local adres=nowa_nazwa_strony_linku..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; else local naglowek=(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or ""); local adres=wartosc..naglowek; link="[[:"..adres..((parametry_modul.CzyTak(nazwa)) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..po_linku; end; if not bez_znacznikow then local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony); else return link; end; end; end; local wynik=Bez_przetwarzania_lub_bez_znaczkow();if(wynik)then return wynik;end; return linki_modul.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); end; function p.UzyskajKodWikiLinku(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local wiki_modul=require("Module:Wiki"); local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local pudelko_modul=require("Module:Pudełko"); kod_jezyka_koncowy=parametry_modul.CzyTak(kod_jezyka_koncowy) and kod_jezyka_koncowy or pudelko_modul["Kod języka tego projektu"](); kod_projektu_koncowy=parametry_modul.CzyTak(kod_projektu_koncowy) and kod_projektu_koncowy or pudelko_modul["Kod projektu tego projektu"](); local aktywny; local czy_nazwa=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_nazwa or not mw.ustring.match(nazwa_strony_linku,"_+"))then if((not czy_nazwa)and((not kod_jezyka_koncowy)or(kod_jezyka_koncowy==pudelko_modul["Kod języka tego projektu"]()))and((not kod_projektu_koncowy)or(kod_projektu_koncowy==pudelko_modul["Kod projektu tego projektu"]())))then if((parametry_modul.CzyTak(naglowek_strony)) or (not args["strona"] or args["strona"]=="") or ((args["strona"])and(mw.ustring.match(args["strona"],"^[_%s]*#[_%s]*$"))or(nil)))then aktywny=false; local nazwy_modul=require("Module:Nazwy"); nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"](); end; else aktywny=true; end; else aktywny=true; local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku=pudelko_modul["Strona główna tego projektu"](); end; local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy); --- local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_pusta_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_pusta_nazwa_strony_linku)then local linki_modul=require("Module:Linki"); nazwa_strony_linku,_=linki_modul["PrzetłumaczZnakZastępczyNaStronę"]("","",kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); end; ---- local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=nil,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["strona"]=nazwa_strony_linku,["nagłówek"]=czy_naglowek_strony,["url"]=czy_url,["parametry"]=czy_parametry_strony,["aktywny"]=aktywny,}; return klasa; end; p["LinkOgólne"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["m"]; local czy_dyskusja=parametry_modul.CzyTak(args["dyskusja"] or args["d"]); local klucz_projektu_do_projektu_linku=args["klucz projektu"] or args["k"]; local kod_jezyka_do_projektu_linku=args["kod języka"] or args["kj"]; local kod_projektu_do_projektu_linku=args["kod projektu"] or args["kp"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local wyswietl_miano_przestrzeni_nazw=args["wyświetl miano przestrzeni nazw"] or args["wyświetl"] or args["w"]; local nazwa_strony_linku=args[1] or "_"; local czy_nazwa=parametry_modul.CzyTak(args[2]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; local czy_niepusta_nazwa_przestrzeni_nazw; local nazwy_modul=require("Module:Nazwy"); local czy_aktualna_wiki; if(not czy_analiza)then local tabela_nazw={}; miano_przestrzeni_nazw=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or ""; nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,nil,nil,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) if(czy_dyskusja)then local tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; nowa_nazwa_strony_linku=nazwy_modul["NAZWASTRONYDYSKUSJI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["bez zmiany adresu"]="tak",},tabela_nazw_temp); end; return nowa_nazwa_strony_linku; end); czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; local tabela_nazw={};tabela_nazw.czy_aktualna_wiki=czy_aktualna_wiki; local czy_biezaca; local czy_nazwa_strony_pusta; local wiki_modul=require("Module:Wiki"); if((czy_dyskusja)or(czy_analiza))then czy_nazwa_strony_pusta=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$"); if((not czy_nazwa_strony_pusta)or((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~="")))then if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local nazwy_modul=require("Module:Nazwy"); if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"](nowa_nazwa_strony_linku,tabela_nazw); else miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); end; czy_niepusta_nazwa_przestrzeni_nazw=parametry_modul.CzyTak(miano_przestrzeni_nazw); end; elseif(hash or czy_kreska_dolna)then czy_niepusta_nazwa_przestrzeni_nazw=true; elseif(not prze_nie_main)then miano_przestrzeni_nazw=""; czy_niepusta_nazwa_przestrzeni_nazw=false; else miano_przestrzeni_nazw=prze_nie_main; czy_niepusta_nazwa_przestrzeni_nazw=true; end; local techniczne_modul=require("Module:Techniczne"); local czy_wyswietl_miano_przestrzeni_nazw=parametry_modul.CzyTak(wyswietl_miano_przestrzeni_nazw); local function NazwaLinkuDoStrony() local function CzyPrzestrzen(miano_przestrzeni_nazw) local czy_biezaca; if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local miano_przestrzeni_nazw; if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else miano_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; end; return miano_przestrzeni_nazw; end; local function Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw) if(czy_wyswietl_miano_przestrzeni_nazw)then return nazwa; else nazwa=nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); if(tabela_nazw.m)then nazwa=mw.getContentLanguage():lcfirst(nazwa); end; return nazwa; end; end; local function Nazwa(nazwa) local ile;local ile2=0; if((czy_analiza) and (not bez_przetwarzania))then nazwa=techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nazwa_przestrzeni..":".."%s"; end; ile2=ile+1; end); else nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nowa_nazwa_strony_linku; end; ile2=ile2+1; end); end; if(ile-ile2==0)then return Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw); else return nazwa; end; end; local function NazwaFormat(wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta) if((not czy_analiza)or(bez_przetwarzania))then return nil;end; if(czy_wyswietl_miano_przestrzeni_nazw)then if(czy_nazwa_strony_pusta)then if(not miano_przestrzeni_nazw)then return "%s:%s"; else return miano_przestrzeni_nazw..((miano_przestrzeni_nazw~="") and ":" or "").."%s"; end; end; else return "%s"; end; end; if(czy_niepusta_nazwa_przestrzeni_nazw)then if(czy_wyswietl_miano_przestrzeni_nazw)then if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then nazwa_strony_linku=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa_strony_linku) or nazwa_strony_linku; if((czy_nazwa_strony_pusta)and(czy_analiza)and(not bez_przetwarzania))then nazwa_strony_linku="%s";end; ---- local aliases; local alias=args["alias miana przestrzeni nazw"] or args["alias"] or args["i"]; local czy_alias=parametry_modul.CzyTak(alias); if(czy_alias)then if((not czy_dyskusja)and(not czy_analiza))then local wiki_modul=require("Module:Wiki"); if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; end; if(czy_biezaca)then local uchwyt=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak"} if(uchwyt)then aliases=uchwyt.aliases; --miano_przestrzeni_nazw=uchwyt.name; end; else local uchwyt=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(uchwyt)then if(parametry_modul.TypeTable(uchwyt))then aliases=uchwyt.aliasy; --miano_przestrzeni_nazw=uchwyt[1]; else --miano_przestrzeni_nazw=uchwyt; aliases={}; end; end; end; end; ---- if((czy_alias)and(parametry_modul.CzyTak(aliases)))then if(parametry_modul["CzySąElementyNumerowaneTablicy"](aliases))then alias=mw.getContentLanguage():uc(alias); for _,value in pairs(aliases)do if((mw.getContentLanguage():uc(value))==alias)then return alias..":"..nazwa_strony_linku; end; end; end; end; if(not miano_przestrzeni_nazw)then return nil;end; local miano_przestrzeni_nazw_zmienna_tymczasowa; if(czy_biezaca)then miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"](nowa_nazwa_strony_linku,tabela_nazw) or nazwa_strony_linku; else miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"]{nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,tabela_nazw} or nazwa_strony_linku; end; if(not miano_przestrzeni_nazw_zmienna_tymczasowa)then return nil;end; return ((miano_przestrzeni_nazw_zmienna_tymczasowa~="") and (miano_przestrzeni_nazw_zmienna_tymczasowa..":") or "")..((((czy_analiza)and(not bez_przetwarzania))and(nazwa_strony_linku=="")) and "%s" or nazwa_strony_linku); else local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa=Nazwa(nazwa); return nazwa; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwa=nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and ("#"..hash) or nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); nazwa=Nazwa(nazwa); return nazwa; end; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; local nazwa=nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if(czy_nazwa_strony_pusta)then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; end; end; end; end; local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$"))))) or nil); local nazwa=czy_nazwa and (args[2] and (((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](args[2]) or args[2]) or nil) or NazwaLinkuDoStrony(); local po=args["po"] or args["p"]; local za=args["za"] or args["z"]; if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash,nazwa,za,po,false,nil,nil,nil,true,wyswietl_miano_przestrzeni_nazw,czy_dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash or ((not czy_kreska_dolna) and mw.ustring.match(nazwa_strony_linku,"#") or nil),nil,nil); else return link; end; end; end; function p.ZamianaKategoriiNaLinki(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local techniczne_modul=require("Module:Techniczne"); local nazwy_np_modul=wm.loadData("Module:Nazwy/Np"); local kategoria_polska=nazwy_np_modul.Category; local wzor_kategorii_polskiej=techniczne_modul["WzórDanejPrzestrzeniNazw"](kategoria_polska) tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); return tekst; end; return p; rvcipjbvcjld46h1050k02yagssigsw 538704 538700 2026-03-31T21:45:01Z Persino 2851 538704 Scribunto text/plain local p={}; p["PrzetłumaczZnakZastępczyNaStronę"]=function(nazwa_przestrzeni_nazw,nazwa_strony,kod_jezyka,kod_projektu,hash) local czy_pusta_nazwa_przestrzeni_nazw=mw.ustring.match(nazwa_przestrzeni_nazw,"^([%s_:]*)$"); local czy_pusta_nazwa_strony=mw.ustring.match(nazwa_strony,"^([%s_:]*)#.*$") or mw.ustring.match(nazwa_strony,"^([%s_:]*)$"); if(not czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony)then local tabglownestronyprojektu=mw.loadData("Module:Nazwy/przestrzenie").tabnp; local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"](nazwa_przestrzeni_nazw); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(not czy_biezaca)then local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} local nazwa_bazowa_strony=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_bazowa_strony)then local nazwa_strony_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=nazwa_bazowa_strony, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, ["kod języka bazy"]="pl", ["kod projektu bazy"]=(nazwa_kanoniczna_nazwy_przestrzeni_nazw~="Project")and "w" or "b", } if(nazwa_strony_na_innym_projekcie)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_na_innym_projekcie,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; else return nazwa_bazowa_strony,false; end; end; else local nazwy_modul=require("Module:Nazwy"); if(hash)then local nazwy_modul=require("Module:Nazwy"); local tabela_nazw={}; local prze_bierzacej_strony=nazwy_modul["NAZWAPRZESTRZENI"](nil,tabela_nazw); local nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,}; if(nazwa_przestrzeni_nazw==prze_bierzacej_strony)then return nazwy_modul["PEŁNANAZWASTRONY"](nil,tabela_nazw),true; end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.Np{["nazwa"]=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak"} local nazwa_strony_glownych_stron_projektu=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_strony_glownych_stron_projektu)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_glownych_stron_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; end; elseif czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony 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)and(hash))then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"](),true; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local tablokalnesiostrzane=wiki_interwiki_modul.tablica_lokalne_siostrzane; if(tablokalnesiostrzane[kod_projektu])then local wiki_modul=require("Module:Wiki"); local pudelko_modul=require("Module:Pudełko"); local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"](); if(not czy_biezaca)then local nazwa_strony_glownej_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=strona_glowna_tego_projektu, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, } if(nazwa_strony_glownej_na_innym_projekcie)then return nazwa_strony_glownej_na_innym_projekcie,false; end; else return strona_glowna_tego_projektu,false; end; end; end; return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; p["PoprawLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); z_kodowaniem=parametry_modul.CzyTak(z_kodowaniem); local function pojedynczy_link(link) local strona=mw.ustring.match(link,"^%[%[:?([^%[%]|]*)"); local nazwa=mw.ustring.match(link,"^%[%[[^|]*|([^%[%]]*)%]%]$") or strona; local z_kodowaniem_temp=(mw.ustring.match(strona,"%%%x%x")and true or false) or z_kodowaniem; link=p.TworzenieWikiLinku(nil,nil,nil,strona,nil,nazwa,nil,nil,false,nil,nil,nil,nil,nil,nil,nil,z_kodowaniem_temp); return link; end; return mw.ustring.gsub(argument_pierwszy,"(%[%[[^%[%]]*%]%])",function(s)return pojedynczy_link(s);end); end; p["WydobądźLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc,_=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); local specjalne_modul=require("Module:Specjalne"); wartosc=specjalne_modul["UsuńKomentarze"](wartosc); wartosc=specjalne_modul["UsuńSzablonyStylów"](wartosc); wartosc=specjalne_modul["UsuńZnaczniki"](wartosc); wartosc=specjalne_modul["UsuńKategorie"](wartosc); wartosc=specjalne_modul["UsuńWywołaniaPlików"](wartosc); wartosc=specjalne_modul["UsuńInterwiki"](wartosc); local linki_modul=require("Module:Linki"); wartosc=linki_modul["PoprawLinki"]{wartosc,z_kodowaniem}; return wartosc; end; function p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem) if(not czy_url)then local parametry_modul=require("Module:Parametry"); local czy_klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku); local czy_kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku); local czy_kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku); local czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); local czy_po=parametry_modul.CzyTak(po); if(not czy_naglowek_strony)then if(czy_nazwa_strony_linku)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; local strona_zmienna_tymczasowa=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu) local naglowek_zmienna_tymczasowa=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); if(strona_zmienna_tymczasowa and naglowek_zmienna_tymczasowa)then nazwa_strony_linku=strona_zmienna_tymczasowa; naglowek_zmienna_tymczasowa=parametry_modul["Odstępy"]{[1]=naglowek_zmienna_tymczasowa,[2]="tak",[3]="tak",}; if(parametry_modul.CzyTak(naglowek_zmienna_tymczasowa))then naglowek_strony=naglowek_zmienna_tymczasowa; czy_naglowek_strony=true; end; end; end; else naglowek_strony=parametry_modul["Odstępy"]{[1]=naglowek_strony,[2]="tak",[3]="tak",}; if(not parametry_modul.CzyTak(naglowek_strony))then czy_naglowek_strony=false; naglowek_strony=nil; end; end; --- local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local interwikimap=wiki_interwiki_modul.interwikimap; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local wiki_modul=require("Module:Wiki"); local kod_jezyka_uzyskany_poczatkowy,kod_projektu_uzyskany_poczatkowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); 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(not kod_jezyka_uzyskany_poczatkowy or not kod_projektu_uzyskany_poczatkowy)then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_uzyskany_poczatkowy or kod_jezyka_tego_projektu; kod_projektu_uzyskany_poczatkowy=kod_projektu_uzyskany_poczatkowy or kod_projektu_tego_projektu; end; local czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; local tablica_kodow={}; local kod_jezyka_koncowy;local kod_projektu_koncowy; --------------------------------------------------------------------- kod_jezyka_koncowy=kod_jezyka_uzyskany_poczatkowy; kod_projektu_koncowy=kod_projektu_uzyskany_poczatkowy; --------------------------------------------------------------------- local kod_jezyka_poczatkowy,kod_projektu_poczatkowy; if(czy_pelna_nazwa_strony_prawidlowa)then nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,kod_jezyka_poczatkowy,kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,bez_przetwarzania_kodow and tablica_kodow or nil); czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; end; ---- if(not nazwa)then nazwa=nazwa_strony_linku..(czy_naglowek_strony and ("#"..naglowek_strony) or ""); nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," "); czy_nazwa=parametry_modul.CzyTak(nazwa); end local ciag_tablica_kodow=""; if(bez_przetwarzania_kodow)then if(kod_jezyka_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_poczatkowy; else ciag_tablica_kodow=kod_jezyka_poczatkowy; end; elseif(kod_projektu_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_projektu_uzyskany_poczatkowy=kod_projektu_poczatkowy; else ciag_tablica_kodow=kod_projektu_poczatkowy; end; end; local ciag_tablica_kodow_zmienna_tymczasowa=table.concat(tablica_kodow,":"); ciag_tablica_kodow=ciag_tablica_kodow..(((ciag_tablica_kodow~="")and(ciag_tablica_kodow_zmienna_tymczasowa~=""))and ":" or "")..ciag_tablica_kodow_zmienna_tymczasowa; else kod_jezyka_uzyskany_poczatkowy=kod_jezyka_koncowy; kod_projektu_uzyskany_poczatkowy=kod_projektu_koncowy; end; local nazwy_modul=require("Module:Nazwy"); local czy_dyskusja=parametry_modul.CzyTak(dyskusja); local pierwsza_litera=((czy_pelna_nazwa_strony_prawidlowa)and(not czy_dyskusja)) and mw.ustring.match(nazwa_strony_linku,"^(%a)") or nil; local tabela_nazw={}; local nazwaprzestrzeni=czy_pelna_nazwa_strony_prawidlowa and ((not czy_dyskusja)and nazwy_modul["NAZWAPRZESTRZENI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy},tabela_nazw) or nazwy_modul["PRZESTRZEŃDYSKUSJI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw)) or ""; local nazwastrony=czy_pelna_nazwa_strony_prawidlowa and nazwy_modul["NAZWASTRONY"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) or ""; local linki_modul=require("Module:Linki"); local strona_inna_zmienna_tymczasowa,czy_strona_lokalna=linki_modul["PrzetłumaczZnakZastępczyNaStronę"](nazwaprzestrzeni,nazwastrony,kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); local czy_pelna_nazwa_strony_prawidlowa=((czy_pelna_nazwa_strony_prawidlowa)and(parametry_modul["CzyTakCiąg"](strona_inna_zmienna_tymczasowa) and not mw.ustring.match(strona_inna_zmienna_tymczasowa,"^[%s_:]+$")) or strona_inna_zmienna_tymczasowa); local function TabelaNazw()tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki;return tabela_nazw_temp;end; if(nazwastrony=="")then local tabela_nazw=TabelaNazw(); local nazwa_strony=nazwy_modul["NAZWASTRONY"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) local techniczne_modul=require("Module:Techniczne"); local nowa_nazwa_strony=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](nazwa_strony); if(nazwa)then local f,ile=mw.ustring.gsub(nazwa,"%%s",function()return nil;end); if(ile==1)then nazwa=mw.ustring.format(nazwa,nowa_nazwa_strony) or nil; elseif(ile==2)then local nowa_nazwa_przestrzeni=nazwy_modul[(czy_dyskusja) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw); if(tabela_nazw.czy_aktualna_wiki)then nowa_nazwa_przestrzeni=nazwy_modul.Np{nazwa=nowa_nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nowa_nazwa_przestrzeni=nazwy_modul.NpDane{nazwa=nowa_nazwa_przestrzeni,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or nowa_nazwa_przestrzeni; end; nazwa=mw.ustring.format(nazwa,nowa_nazwa_przestrzeni,nowa_nazwa_strony) or nil; end; end; end; strona_inna_zmienna_tymczasowa=strona_inna_zmienna_tymczasowa or nazwa_strony_linku; local function NazwaStronyDyskusji(strona) if(czy_dyskusja and czy_pelna_nazwa_strony_prawidlowa)then return nazwy_modul["NAZWASTRONYDYSKUSJI"]({[1]=strona,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()); end; return strona; end; local strona_zmienna_tymczasowa=NazwaStronyDyskusji(strona_inna_zmienna_tymczasowa); nazwa_strony_linku=((not czy_strona_lokalna or ((czy_dyskusja)and(nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw())~=nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()))))and strona_zmienna_tymczasowa or ""); nazwa_strony_linku=pierwsza_litera and mw.ustring.gsub(nazwa_strony_linku,"^["..mw.getContentLanguage():ucfirst(pierwsza_litera)..mw.getContentLanguage():lcfirst(pierwsza_litera).."]",pierwsza_litera) or nazwa_strony_linku; czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local function BiezacaWikiDwukropek() local czy_biezace_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; local czy_wstawiac_dwukropek; if(czy_biezace_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((nazwaprzestrzeni==nazwy_np_modul.Category)or(nazwaprzestrzeni==nazwy_np_modul.File))then czy_wstawiac_dwukropek=true; end; end; return czy_wstawiac_dwukropek; end; local pudelko_modul=require("Module:Pudełko"); local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane; local projekty_nie_en=jezykowe_projekty[kod_projektu_uzyskany_poczatkowy]; local czy_kod_jezyka_uzyskany_poczatkowy=(kod_jezyka_uzyskany_poczatkowy~=kod_jezyka_tego_projektu); local czy_kod_projektu_uzyskany_poczatkowy=(kod_projektu_uzyskany_poczatkowy~=kod_projektu_tego_projektu); local html_modul=require("Module:Html"); local function AdresLinku() local kody_poczatkowe=(not projekty_nie_en and (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or(czy_kod_jezyka_uzyskany_poczatkowy and kod_jezyka_uzyskany_poczatkowy..":"..(czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or ""))); local tablica_kodow=kody_poczatkowe..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or ""); local czy_wstawiac_dwukropek=((tablica_kodow~="")and (projekty_nie_en and (czy_kod_jezyka_uzyskany_poczatkowy and ":" or "") or "") or (BiezacaWikiDwukropek() and ":" or "")); local strona;local parametry;local naglowek; if(czy_nazwa_strony_linku)then strona=html_modul.EncodeElementyAdresuStrony(nazwa_strony_linku,nil,z_kodowaniem); end; if(czy_parametry_strony)then parametry=html_modul.EncodeElementyAdresuStrony(parametry_strony,true,z_kodowaniem); parametry="?"..parametry; end; if(czy_naglowek_strony)then naglowek=html_modul.EncodeElementyAdresuStrony(naglowek_strony,nil,z_kodowaniem); naglowek="#"..naglowek; end; local zmienna_linkowa=tablica_kodow..(strona or "") ..(parametry or "")..(naglowek or ""); return zmienna_linkowa, czy_wstawiac_dwukropek; end; nazwa=nazwa and mw.ustring.gsub(nazwa,"^[%s_]*","") or nil; nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]*$","") or nil; --nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]+"," ") or nil; if(czy_ogolne and not czy_nazwa)then if(parametry_modul.CzyTak(wyswietl))then nazwa=strona_zmienna_tymczasowa; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); else if((czy_pelna_nazwa_strony_prawidlowa)and(nazwastrony~=""))then nazwa=nazwastrony; else nazwa=nazwy_modul["NAZWASTRONY"]{[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_uzyskany_poczatkowy,["kod projektu"]=kod_projektu_uzyskany_poczatkowy,}; end; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); end end; local zmienna_linkowa; local aktywny; if(not czy_wewnetrzny_z_fullurl)then local czy_wstawiac_dwukropek; zmienna_linkowa,czy_wstawiac_dwukropek=AdresLinku(); zmienna_linkowa=mw.ustring.gsub(zmienna_linkowa,"[%s_]+"," "); local czy_za=parametry_modul.CzyTak(za); if(czy_za or(nazwa and (nazwa~=zmienna_linkowa)))then zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa..(czy_nazwa and "|"..nazwa..(czy_za and za or "") or (czy_za and ("|"..zmienna_linkowa..za) or "")).."]]"..(czy_po and po or ""); else zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa.."]]"..(czy_po and po or ""); end aktywny=false; else aktywny=true; local serwer; local projekt; if(projekty_nie_en)then for kod_specjalny_projektu,kod_projektu_interwiki in pairs(wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie)do if(kod_projektu_uzyskany_poczatkowy==kod_projektu_interwiki)then projekt=kod_specjalny_projektu; end; end; end; local function Protocol(kod_projektu) local interwikimap=wiki_interwiki_modul.interwikimap; local url=interwikimap[kod_projektu]; if(not url)then return "";end; return mw.ustring.match(url,"^([^/]*)//"); end; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local nazwy_np_modul=require("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local czy_specjalna=(nazwaprzestrzeni==nazwy_np_modul.Special); local ciag_tablica_kodow_zmienna_tymczasowa=mw.ustring.gsub(strona_zmienna_tymczasowa,"[%s_]+","_"); if(((projekt)and(czy_parametry_strony)and(czy_specjalna))or((projekt)and(wersja_linku=="w")))then local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony)and(czy_specjalna))or((not projekty_nie_en)and(wersja_linku=="w")))then local techniczne_modul=require("Module:Techniczne"); local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local serwer=mw.ustring.match(wiki_nie_jezykowe,"^([^/]*//[^/]*)") local adres=serwer.."/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((projekt)and(czy_parametry_strony))or((projekt)and(wersja_linku=="wiki")))then local strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"[_%s]+","_"); local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/wiki/"..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and " "..nazwa..(parametry_modul.CzyTak(za) and za or "") or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony))or((not projekty_nie_en)and(wersja_linku=="wiki")))then local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local strona_zmienna_tymczasowa,_=mw.ustring.gsub(ciag_tablica_kodow_zmienna_tymczasowa,"[_%s]+","_"); strona_zmienna_tymczasowa=((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; strona_zmienna_tymczasowa=html_modul.EncodeHtml(strona_zmienna_tymczasowa); strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"([%%])(%d+)","%%%%%2"); strona_zmienna_tymczasowa,_=mw.ustring.gsub(wiki_nie_jezykowe,"$1",strona_zmienna_tymczasowa); local adres=strona_zmienna_tymczasowa..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); else local pudelko_modul=require("Module:Pudełko"); zmienna_linkowa=(parametry_modul.CzyTak(klucz_projektu)and ((not(klucz_projektu==pudelko_modul["Klucz projektu tego projektu"]()))and (klucz_projektu..":")or "" ) or ((parametry_modul.CzyTak(kod_jezyka_uzyskany_poczatkowy)and ((not(kod_jezyka_uzyskany_poczatkowy==pudelko_modul["Kod języka tego projektu"]()))and(kod_jezyka_uzyskany_poczatkowy..":")or "") or "")..(parametry_modul.CzyTak(kod_projektu_uzyskany_poczatkowy)and ((not(kod_projektu_uzyskany_poczatkowy==pudelko_modul["Kod projektu tego projektu"]()))and(kod_projektu_uzyskany_poczatkowy..":")or "") or ""))) ..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; local strona=(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); local adres=tostring(mw.uri.fullUrl(zmienna_linkowa))..strona; zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); end; end; return zmienna_linkowa,kod_jezyka_koncowy,kod_projektu_koncowy,strona_zmienna_tymczasowa,czy_naglowek_strony,aktywny; else local parametry_modul=require("Module:Parametry"); local html_modul=require("Module:Html"); local czy_nazwa; if(not nazwa)then nazwa=mw.ustring.match(nazwa_strony_linku,"//[^/]*/(.*)$"); nazwa=html_modul.DecodeHtml(nazwa); czy_nazwa=parametry_modul.CzyTak(nazwa); else czy_nazwa=parametry_modul.CzyTak(nazwa); end; local czy_po=parametry_modul.CzyTak(po); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"[%s_]+","_"); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"//([^/]*)/(.*)$", function(s1,s2)return "//"..s1.."/"..html_modul.EncodeHtml(s2);end) local adres=nazwa_strony_linku..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "") ..(czy_naglowek_strony and "#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony)) or ""); local zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); return zmienna_linkowa,nil,nil,nazwa_strony_linku,czy_naglowek_strony,false; end; end; function p.TworzLinkBezPrzetwarzania(klucz_projektu,kod_jezyka,kod_projektu,strona,naglowek,nazwa,za,po,z_kodowaniem) local parametry_modul=require("Module:Parametry"); local adres=(parametry_modul.CzyTak(klucz_projektu)and (klucz_projektu..":") or ((parametry_modul.CzyTak(kod_jezyka)and (kod_jezyka..":") or "")..(parametry_modul.CzyTak(kod_projektu)and (kod_projektu..":") or ""))) ..strona..(parametry_modul.CzyTak(naglowek) and ("#"..naglowek) or ""); local html_modul=require("Module:Html"); adres=html_modul.AdresProjektuEncodeHtml(adres,z_kodowaniem); local wartosc="[[:"..adres..(parametry_modul.CzyTak(nazwa) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..(po and po or ""); return wartosc; end; function p.LinkWikidane(link,klucz_projektu,kod_jezyka,kod_projektu,strona,czy_naglowek,czy_url,czy_parametry,aktywny) local wiki_modul=require("Module:Wiki"); local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nagłówek"]=czy_naglowek,["url"]=czy_url,["parametry"]=czy_parametry,["aktywny"]=aktywny,}; local nazwy_modul=require("Module:Nazwy"); local spanramka=mw.html.create('span'); spanramka:addClass(klasa); spanramka:addClass("link"); local spacja=string.match(link," "); if(not spacja)then spanramka:addClass("bez-spacji"); end; spanramka:wikitext(link); return tostring(spanramka:allDone()); end; function p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem) local parametry_modul=require("Module:Parametry"); parametry_strony=czy_wewnetrzny_z_fullurl and parametry_strony or nil; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local html_modul=require("Module:Html"); nazwa_strony_linku=html_modul["TransformacjaKoduHtmlDoZnakuCiągu"](nazwa_strony_linku); local wartosc_parent,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,aktywny=p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem); if(parametry_modul.CzyTak(bez_znacznikow))then return wartosc_parent;end; return p.LinkWikidane(wartosc_parent,nil,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony,aktywny); end; function p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,naglowek,czy_link_url,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,__FUNKCJA) local nowa_nazwa_strony_linku; local czy_kreska_dolna;local hash;local prze_nie_main; local czy_strona_lokalna; if(not czy_analiza)then czy_kreska_dolna=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$") or mw.ustring.match(nazwa_strony_linku,":[%s_]*$"); hash=(not czy_kreska_dolna)and ((not czy_link_url) and mw.ustring.match(nazwa_strony_linku,"^[_%s]*#(.*)$") or nil) or (((czy_kreska_dolna)and(czy_link_url) and require("Module:Parametry").CzyTak(naglowek)) and naglowek or nil); if((czy_kreska_dolna)or(hash))then local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local miano_przestrzeni_nazw_maly=((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))and mw.ustring.lower(miano_przestrzeni_nazw) or miano_przestrzeni_nazw; if((not miano_przestrzeni_nazw_maly)or((miano_przestrzeni_nazw_maly=="")or(miano_przestrzeni_nazw_maly=="(main)")or(miano_przestrzeni_nazw_maly=="(główna)")))then miano_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); end; local nazwa_strony=nazwy_modul["NAZWASTRONY"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); if(nazwa_strony=="")then nowa_nazwa_strony_linku,czy_strona_lokalna=p["PrzetłumaczZnakZastępczyNaStronę"](miano_przestrzeni_nazw or "","",kod_jezyka,kod_projektu,hash); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; nowa_nazwa_strony_linku=__FUNKCJA(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main); return nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; end; p["GanerujSkładoweURL"] = function(args) local klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku; local miano_przestrzeni_nazw; local nazwa_strony_linku=args["strona"] or args["s"] or "_"; local html_modul=require("Module:Html"); nazwa_strony_linku=nazwa_strony_linku and html_modul.DecodeHtml(nazwa_strony_linku) or nil; local parametry_modul=require("Module:Parametry"); local w=args["wersja linku"] or args["w"]; local tab_w={ ["w"]=true, ["wiki"]=true, }; local wersja_linku=parametry_modul.CzyTak(w) and (tab_w[w] and w or nil) or ""; local _; local strony_modul=require("Module:Strony"); local czy_url=strony_modul.SprawdzanieURL(nazwa_strony_linku); local parametry_strony;local naglowek_strony;local nazwa;local po;local po;local za; nazwa=args["nazwa"] or args["n"]; po=args["po"] or args["p"]; za=args["za"] or args["z"]; local function DaneStrony(nazwa_strony_linku_parametr,adres) if(parametry_modul.CzyTak(nazwa_strony_linku_parametr))then if(mw.ustring.match(nazwa_strony_linku_parametr,"^/wiki/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/wiki/",""); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); elseif(mw.ustring.match(nazwa_strony_linku_parametr,"^/w/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/w/",""); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); local nazwa_strony_jednostki,parametry_strony_jednostki=html_modul["NazwaStronyZParametrówStronyAdresu"](parametry_strony,true); parametry_strony=parametry_strony_jednostki or parametry_strony; nazwa_strony_linku_parametr=nazwa_strony_jednostki or nazwa_strony_linku_parametr; else nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/(.*)$","%1"); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); end; else if((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku))or(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)))then if((not adres)or(mw.ustring.match(adres,"/$1$")))then local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku_parametr=pudelko_modul["Nazwa strony głównej projektu 2"]{[1]=kod_jezyka_do_projektu_linku,[2]=kod_projektu_do_projektu_linku,} or ""; end; end; end; parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); --nazwa=args["nazwa"] or args["n"]; local klucz_projektu_do_projektu_linku_temp=args["klucz projektu"] or args["k"]; klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku_temp) and (klucz_projektu_do_projektu_linku_temp) or klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku_temp=args["kod języka"] or args["kj"]; kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku_temp) and (kod_jezyka_do_projektu_linku_temp) or kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku_temp=args["kod projektu"] or args["kp"]; kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku_temp) and (kod_projektu_do_projektu_linku_temp) or kod_projektu_do_projektu_linku; nazwa_strony_linku=nazwa_strony_linku_parametr; czy_url=false; end; if(not czy_url)then local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["f"]; nazwa_strony_linku=parametry_modul["CzyTakCiąg"](miano_przestrzeni_nazw) and miano_przestrzeni_nazw..":"..nazwa_strony_linku or nazwa_strony_linku; DaneStrony(nazwa_strony_linku); else local html_modul=require("Module:Html"); local nazwa_strony_bez_protokolu=html_modul["UrlBezProtokołu"](nazwa_strony_linku); local serwer,nazwa_strony=html_modul["URLStrona"](nazwa_strony_bez_protokolu); local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local function SerwerWiki(serwer) local kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.(%w+)%.org"); if((not kod_jezyka_zmienna_tymczasowa)or(not kod_specjalny_projektu))then kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.[mM]%.(%w+)%.org"); end; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local kod_projektu=interwikisiostrzaneangielskie[kod_specjalny_projektu]; local kod_jezyka=kod_jezyka_zmienna_tymczasowa and (mw.language.isKnownLanguageTag(kod_jezyka_zmienna_tymczasowa) and kod_jezyka_zmienna_tymczasowa or nil) or nil; return kod_jezyka,kod_projektu; end; local function JezykoweLubAngielskieProjekty(serwer_portalu) local kod_jezyka,kod_projektu=SerwerWiki(serwer_portalu); if(kod_jezyka and kod_projektu)then kod_jezyka_do_projektu_linku=kod_jezyka; kod_projektu_do_projektu_linku=kod_projektu; klucz_projektu_do_projektu_linku=nil; DaneStrony(nazwa_strony); return true; else local pozajezykoweprojektysiostrzane=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane; local techniczne_modul=require("Module:Techniczne"); for kod, url in pairs(pozajezykoweprojektysiostrzane)do local adres=html_modul["UrlBezProtokołu"](url); local serwer_portalu,nazwa_strony_portalu=html_modul["URLStrona"](adres); if(serwer_portalu)then if((serwer_portalu==serwer)and((mw.ustring.match(nazwa_strony_portalu,"%$1"))or(nazwa_strony==nazwa_strony_portalu)))then kod_jezyka_do_projektu_linku=kod_jezyka or "en"; kod_projektu_do_projektu_linku=--[[kod_projektu or]] kod; local nazwa_strony_spreparowana=nil; if(not mw.ustring.match(adres,"/wiki/%$1$"))then if(mw.ustring.match(url,"[:/]$1$"))then local url_wzor=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](adres); url_wzor=mw.ustring.gsub(url_wzor,"(%%$1)$","(.-)"); nazwa_strony_spreparowana=mw.ustring.match(nazwa_strony_bez_protokolu,"^"..url_wzor.."$"); if(not nazwa_strony_spreparowana)then return false; end; end; end; DaneStrony(nazwa_strony_spreparowana or nazwa_strony,adres); return true; end; end; end; end; end; local function __FUNKCJA() if(mw.ustring.match(serwer,"^upload%.wikimedia%.org$"))then DaneStrony(nazwa_strony); nazwa_strony=nazwa_strony_linku; nazwa_strony_linku="Media:"..mw.ustring.match(nazwa_strony,"([^/]*)$"); local kod_projektu_do_projektu_linku2,kod_jezyka_do_projektu_linku2=mw.ustring.match(nazwa_strony,"^([^/]*)/([^/]*)/.*$"); kod_jezyka_do_projektu_linku=kod_jezyka_do_projektu_linku or kod_jezyka_do_projektu_linku2; kod_projektu_do_projektu_linku=kod_projektu_do_projektu_linku or kod_projektu_do_projektu_linku2; czy_url=false; else local juz_tak=JezykoweLubAngielskieProjekty(serwer); if(not juz_tak)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); nazwa_strony_linku=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); end; end; end; __FUNKCJA(); end; local czy_wewnetrzny_z_fullurl; if(not parametry_modul.CzyTak(parametry_strony))then if(wersja_linku=="")then if((klucz_projektu_do_projektu_linku)or(kod_jezyka_do_projektu_linku)or(kod_projektu_do_projektu_linku))then czy_wewnetrzny_z_fullurl=false; elseif(not czy_url)then czy_wewnetrzny_z_fullurl=false; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; return klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url; end; p["Link wewnętrzny"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local klucz_projektu_do_projektu_linku=args["klucz projektu"]; local kod_jezyka_do_projektu_linku=args["kod języka"]; local kod_projektu_do_projektu_linku=args["kod projektu"]; local nazwa_strony_linku=args["strona"] or "_"; local nazwa=args["nazwa"]; local czy_nazwa=parametry_modul.CzyTak(nazwa); nazwa=czy_nazwa and nazwa or nil; local po=args["po"]; local za=args["za"]; local naglowek_strony=args["nagłówek"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if(not czy_analiza)then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=czy_nazwa and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((not czy_naglowek)and(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$")))) or nil); if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek and naglowek_strony or hash,nazwa,za,po,nil,nil,nil,nil,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),czy_naglowek and naglowek_strony or hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony or hash or mw.ustring.match(nazwa_strony_linku,"#"),nil,nil); else return link; end; end; end; p["LinkURL"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if((not czy_analiza)and(not czy_url))then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=parametry_modul.CzyTak(nazwa) and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$"))) or nil); local function Bez_przetwarzania_lub_bez_znaczkow() if(parametry_modul.CzyTak(bez_przetwarzania))then local bez_znacznikow=parametry_modul.CzyTak(bez_znacznikow); local czy_parametry=parametry_modul.CzyTak(parametry_strony); local wartosc=((not czy_url)and((parametry_modul.CzyTak(klucz_projektu_do_projektu_linku)and (klucz_projektu_do_projektu_linku..":") or ((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku)and (kod_jezyka_do_projektu_linku..":") or "")..(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)and (kod_projektu_do_projektu_linku..":") or "")))..nowa_nazwa_strony_linku) or nil); local link; local po_linku=parametry_modul.CzyTak(po) and po or ""; if((not czy_url)and((czy_parametry)or(parametry_modul.CzyTak(wersja_linku))))then local adres=tostring(mw.uri.fullUrl(wartosc,"")); adres=((not parametry_modul.CzyTak(wersja_linku))or(wersja_linku=="wiki")) and adres or mw.ustring.gsub(adres,"/wiki/","/w/index.php?title=",1); local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ((((wersja_linku=="w")) and "&" or "?")..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") adres=adres..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; elseif(czy_url)then local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") local adres=nowa_nazwa_strony_linku..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; else local naglowek=(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or ""); local adres=wartosc..naglowek; link="[[:"..adres..((parametry_modul.CzyTak(nazwa)) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..po_linku; end; if not bez_znacznikow then local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony); else return link; end; end; end; local wynik=Bez_przetwarzania_lub_bez_znaczkow();if(wynik)then return wynik;end; return linki_modul.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); end; function p.UzyskajKodWikiLinku(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local wiki_modul=require("Module:Wiki"); local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local pudelko_modul=require("Module:Pudełko"); kod_jezyka_koncowy=parametry_modul.CzyTak(kod_jezyka_koncowy) and kod_jezyka_koncowy or pudelko_modul["Kod języka tego projektu"](); kod_projektu_koncowy=parametry_modul.CzyTak(kod_projektu_koncowy) and kod_projektu_koncowy or pudelko_modul["Kod projektu tego projektu"](); local aktywny; local czy_nazwa=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_nazwa or not mw.ustring.match(nazwa_strony_linku,"_+"))then if((not czy_nazwa)and((not kod_jezyka_koncowy)or(kod_jezyka_koncowy==pudelko_modul["Kod języka tego projektu"]()))and((not kod_projektu_koncowy)or(kod_projektu_koncowy==pudelko_modul["Kod projektu tego projektu"]())))then if((parametry_modul.CzyTak(naglowek_strony)) or (not args["strona"] or args["strona"]=="") or ((args["strona"])and(mw.ustring.match(args["strona"],"^[_%s]*#[_%s]*$"))or(nil)))then aktywny=false; local nazwy_modul=require("Module:Nazwy"); nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"](); end; else aktywny=true; end; else aktywny=true; local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku=pudelko_modul["Strona główna tego projektu"](); end; local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy); --- local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_pusta_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_pusta_nazwa_strony_linku)then local linki_modul=require("Module:Linki"); nazwa_strony_linku,_=linki_modul["PrzetłumaczZnakZastępczyNaStronę"]("","",kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); end; ---- local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=nil,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["strona"]=nazwa_strony_linku,["nagłówek"]=czy_naglowek_strony,["url"]=czy_url,["parametry"]=czy_parametry_strony,["aktywny"]=aktywny,}; return klasa; end; p["LinkOgólne"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["m"]; local czy_dyskusja=parametry_modul.CzyTak(args["dyskusja"] or args["d"]); local klucz_projektu_do_projektu_linku=args["klucz projektu"] or args["k"]; local kod_jezyka_do_projektu_linku=args["kod języka"] or args["kj"]; local kod_projektu_do_projektu_linku=args["kod projektu"] or args["kp"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local wyswietl_miano_przestrzeni_nazw=args["wyświetl miano przestrzeni nazw"] or args["wyświetl"] or args["w"]; local nazwa_strony_linku=args[1] or "_"; local czy_nazwa=parametry_modul.CzyTak(args[2]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; local czy_niepusta_nazwa_przestrzeni_nazw; local nazwy_modul=require("Module:Nazwy"); local czy_aktualna_wiki; if(not czy_analiza)then local tabela_nazw={}; miano_przestrzeni_nazw=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or ""; nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,nil,nil,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) if(czy_dyskusja)then local tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; nowa_nazwa_strony_linku=nazwy_modul["NAZWASTRONYDYSKUSJI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["bez zmiany adresu"]="tak",},tabela_nazw_temp); end; return nowa_nazwa_strony_linku; end); czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; local tabela_nazw={};tabela_nazw.czy_aktualna_wiki=czy_aktualna_wiki; local czy_biezaca; local czy_nazwa_strony_pusta; local wiki_modul=require("Module:Wiki"); if((czy_dyskusja)or(czy_analiza))then czy_nazwa_strony_pusta=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$"); if((not czy_nazwa_strony_pusta)or((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~="")))then if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local nazwy_modul=require("Module:Nazwy"); if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"](nowa_nazwa_strony_linku,tabela_nazw); else miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); end; czy_niepusta_nazwa_przestrzeni_nazw=parametry_modul.CzyTak(miano_przestrzeni_nazw); end; elseif(hash or czy_kreska_dolna)then czy_niepusta_nazwa_przestrzeni_nazw=true; elseif(not prze_nie_main)then miano_przestrzeni_nazw=""; czy_niepusta_nazwa_przestrzeni_nazw=false; else miano_przestrzeni_nazw=prze_nie_main; czy_niepusta_nazwa_przestrzeni_nazw=true; end; local techniczne_modul=require("Module:Techniczne"); local czy_wyswietl_miano_przestrzeni_nazw=parametry_modul.CzyTak(wyswietl_miano_przestrzeni_nazw); local function NazwaLinkuDoStrony() local function CzyPrzestrzen(miano_przestrzeni_nazw) local czy_biezaca; if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local miano_przestrzeni_nazw; if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else miano_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; end; return miano_przestrzeni_nazw; end; local function Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw) if(czy_wyswietl_miano_przestrzeni_nazw)then return nazwa; else nazwa=nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); if(tabela_nazw.m)then nazwa=mw.getContentLanguage():lcfirst(nazwa); end; return nazwa; end; end; local function Nazwa(nazwa) local ile;local ile2=0; if((czy_analiza) and (not bez_przetwarzania))then nazwa=techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nazwa_przestrzeni..":".."%s"; end; ile2=ile+1; end); else nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nowa_nazwa_strony_linku; end; ile2=ile2+1; end); end; if(ile-ile2==0)then return Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw); else return nazwa; end; end; local function NazwaFormat(wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta) if((not czy_analiza)or(bez_przetwarzania))then return nil;end; if(czy_wyswietl_miano_przestrzeni_nazw)then if(czy_nazwa_strony_pusta)then if(not miano_przestrzeni_nazw)then return "%s:%s"; else return miano_przestrzeni_nazw..((miano_przestrzeni_nazw~="") and ":" or "").."%s"; end; end; else return "%s"; end; end; if(czy_niepusta_nazwa_przestrzeni_nazw)then if(czy_wyswietl_miano_przestrzeni_nazw)then if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then nazwa_strony_linku=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa_strony_linku) or nazwa_strony_linku; if((czy_nazwa_strony_pusta)and(czy_analiza)and(not bez_przetwarzania))then nazwa_strony_linku="%s";end; ---- local aliases; local alias=args["alias miana przestrzeni nazw"] or args["alias"] or args["i"]; local czy_alias=parametry_modul.CzyTak(alias); if(czy_alias)then if((not czy_dyskusja)and(not czy_analiza))then local wiki_modul=require("Module:Wiki"); if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; end; if(czy_biezaca)then local uchwyt=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak"} if(uchwyt)then aliases=uchwyt.aliases; --miano_przestrzeni_nazw=uchwyt.name; end; else local uchwyt=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(uchwyt)then if(parametry_modul.TypeTable(uchwyt))then aliases=uchwyt.aliasy; --miano_przestrzeni_nazw=uchwyt[1]; else --miano_przestrzeni_nazw=uchwyt; aliases={}; end; end; end; end; ---- if((czy_alias)and(parametry_modul.CzyTak(aliases)))then if(parametry_modul["CzySąElementyNumerowaneTablicy"](aliases))then alias=mw.getContentLanguage():uc(alias); for _,value in pairs(aliases)do if((mw.getContentLanguage():uc(value))==alias)then return alias..":"..nazwa_strony_linku; end; end; end; end; if(not miano_przestrzeni_nazw)then return nil;end; local miano_przestrzeni_nazw_zmienna_tymczasowa; if(czy_biezaca)then miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"](nowa_nazwa_strony_linku,tabela_nazw) or nazwa_strony_linku; else miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"]{nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,tabela_nazw} or nazwa_strony_linku; end; if(not miano_przestrzeni_nazw_zmienna_tymczasowa)then return nil;end; return ((miano_przestrzeni_nazw_zmienna_tymczasowa~="") and (miano_przestrzeni_nazw_zmienna_tymczasowa..":") or "")..((((czy_analiza)and(not bez_przetwarzania))and(nazwa_strony_linku=="")) and "%s" or nazwa_strony_linku); else local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa=Nazwa(nazwa); return nazwa; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwa=nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and ("#"..hash) or nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); nazwa=Nazwa(nazwa); return nazwa; end; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; local nazwa=nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if(czy_nazwa_strony_pusta)then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; end; end; end; end; local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$"))))) or nil); local nazwa=czy_nazwa and (args[2] and (((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](args[2]) or args[2]) or nil) or NazwaLinkuDoStrony(); local po=args["po"] or args["p"]; local za=args["za"] or args["z"]; if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash,nazwa,za,po,false,nil,nil,nil,true,wyswietl_miano_przestrzeni_nazw,czy_dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash or ((not czy_kreska_dolna) and mw.ustring.match(nazwa_strony_linku,"#") or nil),nil,nil); else return link; end; end; end; function p.ZamianaKategoriiNaLinki(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local techniczne_modul=require("Module:Techniczne"); local nazwy_np_modul=wm.loadData("Module:Nazwy/Np"); local kategoria_polska=nazwy_np_modul.Category; local wzor_kategorii_polskiej=techniczne_modul["WzórDanejPrzestrzeniNazw"](kategoria_polska) tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); return tekst; end; return p; c8p00ilr32yg0d71tlg7hyk9patwtbf 538708 538704 2026-03-31T21:59:23Z Persino 2851 538708 Scribunto text/plain local p={}; p["PrzetłumaczZnakZastępczyNaStronę"]=function(nazwa_przestrzeni_nazw,nazwa_strony,kod_jezyka,kod_projektu,hash) local czy_pusta_nazwa_przestrzeni_nazw=mw.ustring.match(nazwa_przestrzeni_nazw,"^([%s_:]*)$"); local czy_pusta_nazwa_strony=mw.ustring.match(nazwa_strony,"^([%s_:]*)#.*$") or mw.ustring.match(nazwa_strony,"^([%s_:]*)$"); if(not czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony)then local tabglownestronyprojektu=mw.loadData("Module:Nazwy/przestrzenie").tabnp; local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"](nazwa_przestrzeni_nazw); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(not czy_biezaca)then local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} local nazwa_bazowa_strony=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_bazowa_strony)then local nazwa_strony_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=nazwa_bazowa_strony, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, ["kod języka bazy"]="pl", ["kod projektu bazy"]=(nazwa_kanoniczna_nazwy_przestrzeni_nazw~="Project")and "w" or "b", } if(nazwa_strony_na_innym_projekcie)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_na_innym_projekcie,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; else return nazwa_bazowa_strony,false; end; end; else local nazwy_modul=require("Module:Nazwy"); if(hash)then local nazwy_modul=require("Module:Nazwy"); local tabela_nazw={}; local prze_bierzacej_strony=nazwy_modul["NAZWAPRZESTRZENI"](nil,tabela_nazw); local nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,}; if(nazwa_przestrzeni_nazw==prze_bierzacej_strony)then return nazwy_modul["PEŁNANAZWASTRONY"](nil,tabela_nazw),true; end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.Np{["nazwa"]=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak"} local nazwa_strony_glownych_stron_projektu=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_strony_glownych_stron_projektu)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_glownych_stron_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; end; elseif czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony 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)and(hash))then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"](),true; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local tablokalnesiostrzane=wiki_interwiki_modul.tablica_lokalne_siostrzane; if(tablokalnesiostrzane[kod_projektu])then local wiki_modul=require("Module:Wiki"); local pudelko_modul=require("Module:Pudełko"); local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"](); if(not czy_biezaca)then local nazwa_strony_glownej_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=strona_glowna_tego_projektu, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, } if(nazwa_strony_glownej_na_innym_projekcie)then return nazwa_strony_glownej_na_innym_projekcie,false; end; else return strona_glowna_tego_projektu,false; end; end; end; return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; p["PoprawLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); z_kodowaniem=parametry_modul.CzyTak(z_kodowaniem); local function pojedynczy_link(link) local strona=mw.ustring.match(link,"^%[%[:?([^%[%]|]*)"); local nazwa=mw.ustring.match(link,"^%[%[[^|]*|([^%[%]]*)%]%]$") or strona; local z_kodowaniem_temp=(mw.ustring.match(strona,"%%%x%x")and true or false) or z_kodowaniem; link=p.TworzenieWikiLinku(nil,nil,nil,strona,nil,nazwa,nil,nil,false,nil,nil,nil,nil,nil,nil,nil,z_kodowaniem_temp); return link; end; return mw.ustring.gsub(argument_pierwszy,"(%[%[[^%[%]]*%]%])",function(s)return pojedynczy_link(s);end); end; p["WydobądźLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc,_=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); local specjalne_modul=require("Module:Specjalne"); wartosc=specjalne_modul["UsuńKomentarze"](wartosc); wartosc=specjalne_modul["UsuńSzablonyStylów"](wartosc); wartosc=specjalne_modul["UsuńZnaczniki"](wartosc); wartosc=specjalne_modul["UsuńKategorie"](wartosc); wartosc=specjalne_modul["UsuńWywołaniaPlików"](wartosc); wartosc=specjalne_modul["UsuńInterwiki"](wartosc); local linki_modul=require("Module:Linki"); wartosc=linki_modul["PoprawLinki"]{wartosc,z_kodowaniem}; return wartosc; end; function p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem) if(not czy_url)then local parametry_modul=require("Module:Parametry"); local czy_klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku); local czy_kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku); local czy_kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku); local czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); local czy_po=parametry_modul.CzyTak(po); if(not czy_naglowek_strony)then if(czy_nazwa_strony_linku)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; local strona_zmienna_tymczasowa=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu) local naglowek_zmienna_tymczasowa=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); if(strona_zmienna_tymczasowa and naglowek_zmienna_tymczasowa)then nazwa_strony_linku=strona_zmienna_tymczasowa; naglowek_zmienna_tymczasowa=parametry_modul["Odstępy"]{[1]=naglowek_zmienna_tymczasowa,[2]="tak",[3]="tak",}; if(parametry_modul.CzyTak(naglowek_zmienna_tymczasowa))then naglowek_strony=naglowek_zmienna_tymczasowa; czy_naglowek_strony=true; end; end; end; else naglowek_strony=parametry_modul["Odstępy"]{[1]=naglowek_strony,[2]="tak",[3]="tak",}; if(not parametry_modul.CzyTak(naglowek_strony))then czy_naglowek_strony=false; naglowek_strony=nil; end; end; --- local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local interwikimap=wiki_interwiki_modul.interwikimap; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local wiki_modul=require("Module:Wiki"); local kod_jezyka_uzyskany_poczatkowy,kod_projektu_uzyskany_poczatkowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); 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(not kod_jezyka_uzyskany_poczatkowy or not kod_projektu_uzyskany_poczatkowy)then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_uzyskany_poczatkowy or kod_jezyka_tego_projektu; kod_projektu_uzyskany_poczatkowy=kod_projektu_uzyskany_poczatkowy or kod_projektu_tego_projektu; end; local czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; local tablica_kodow={}; local kod_jezyka_koncowy;local kod_projektu_koncowy; --------------------------------------------------------------------- kod_jezyka_koncowy=kod_jezyka_uzyskany_poczatkowy; kod_projektu_koncowy=kod_projektu_uzyskany_poczatkowy; --------------------------------------------------------------------- local kod_jezyka_poczatkowy,kod_projektu_poczatkowy; if(czy_pelna_nazwa_strony_prawidlowa)then nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,kod_jezyka_poczatkowy,kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,bez_przetwarzania_kodow and tablica_kodow or nil); czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; end; ---- if(not nazwa)then nazwa=nazwa_strony_linku..(czy_naglowek_strony and ("#"..naglowek_strony) or ""); nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," "); czy_nazwa=parametry_modul.CzyTak(nazwa); end local ciag_tablica_kodow=""; if(bez_przetwarzania_kodow)then if(kod_jezyka_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_poczatkowy; else ciag_tablica_kodow=kod_jezyka_poczatkowy; end; elseif(kod_projektu_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_projektu_uzyskany_poczatkowy=kod_projektu_poczatkowy; else ciag_tablica_kodow=kod_projektu_poczatkowy; end; end; local ciag_tablica_kodow_zmienna_tymczasowa=table.concat(tablica_kodow,":"); ciag_tablica_kodow=ciag_tablica_kodow..(((ciag_tablica_kodow~="")and(ciag_tablica_kodow_zmienna_tymczasowa~=""))and ":" or "")..ciag_tablica_kodow_zmienna_tymczasowa; else kod_jezyka_uzyskany_poczatkowy=kod_jezyka_koncowy; kod_projektu_uzyskany_poczatkowy=kod_projektu_koncowy; end; local nazwy_modul=require("Module:Nazwy"); local czy_dyskusja=parametry_modul.CzyTak(dyskusja); local pierwsza_litera=((czy_pelna_nazwa_strony_prawidlowa)and(not czy_dyskusja)) and mw.ustring.match(nazwa_strony_linku,"^(%a)") or nil; local tabela_nazw={}; local nazwaprzestrzeni=czy_pelna_nazwa_strony_prawidlowa and ((not czy_dyskusja)and nazwy_modul["NAZWAPRZESTRZENI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy},tabela_nazw) or nazwy_modul["PRZESTRZEŃDYSKUSJI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw)) or ""; local nazwastrony=czy_pelna_nazwa_strony_prawidlowa and nazwy_modul["NAZWASTRONY"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) or ""; local linki_modul=require("Module:Linki"); local strona_inna_zmienna_tymczasowa,czy_strona_lokalna=linki_modul["PrzetłumaczZnakZastępczyNaStronę"](nazwaprzestrzeni,nazwastrony,kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); local czy_pelna_nazwa_strony_prawidlowa=((czy_pelna_nazwa_strony_prawidlowa)and(parametry_modul["CzyTakCiąg"](strona_inna_zmienna_tymczasowa) and not mw.ustring.match(strona_inna_zmienna_tymczasowa,"^[%s_:]+$")) or strona_inna_zmienna_tymczasowa); local function TabelaNazw()tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki;return tabela_nazw_temp;end; if(nazwastrony=="")then local tabela_nazw=TabelaNazw(); local nazwa_strony=nazwy_modul["NAZWASTRONY"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) local techniczne_modul=require("Module:Techniczne"); local nowa_nazwa_strony=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](nazwa_strony); if(nazwa)then local f,ile=mw.ustring.gsub(nazwa,"%%s",function()return nil;end); if(ile==1)then nazwa=mw.ustring.format(nazwa,nowa_nazwa_strony) or nil; elseif(ile==2)then local nowa_nazwa_przestrzeni=nazwy_modul[(czy_dyskusja) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw); if(tabela_nazw.czy_aktualna_wiki)then nowa_nazwa_przestrzeni=nazwy_modul.Np{nazwa=nowa_nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nowa_nazwa_przestrzeni=nazwy_modul.NpDane{nazwa=nowa_nazwa_przestrzeni,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or nowa_nazwa_przestrzeni; end; nazwa=mw.ustring.format(nazwa,nowa_nazwa_przestrzeni,nowa_nazwa_strony) or nil; end; end; end; strona_inna_zmienna_tymczasowa=strona_inna_zmienna_tymczasowa or nazwa_strony_linku; local function NazwaStronyDyskusji(strona) if(czy_dyskusja and czy_pelna_nazwa_strony_prawidlowa)then return nazwy_modul["NAZWASTRONYDYSKUSJI"]({[1]=strona,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()); end; return strona; end; local strona_zmienna_tymczasowa=NazwaStronyDyskusji(strona_inna_zmienna_tymczasowa); nazwa_strony_linku=((not czy_strona_lokalna or ((czy_dyskusja)and(nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw())~=nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()))))and strona_zmienna_tymczasowa or ""); nazwa_strony_linku=pierwsza_litera and mw.ustring.gsub(nazwa_strony_linku,"^["..mw.getContentLanguage():ucfirst(pierwsza_litera)..mw.getContentLanguage():lcfirst(pierwsza_litera).."]",pierwsza_litera) or nazwa_strony_linku; czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local function BiezacaWikiDwukropek() local czy_biezace_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; local czy_wstawiac_dwukropek; if(czy_biezace_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((nazwaprzestrzeni==nazwy_np_modul.Category)or(nazwaprzestrzeni==nazwy_np_modul.File))then czy_wstawiac_dwukropek=true; end; end; return czy_wstawiac_dwukropek; end; local pudelko_modul=require("Module:Pudełko"); local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane; local projekty_nie_en=jezykowe_projekty[kod_projektu_uzyskany_poczatkowy]; local czy_kod_jezyka_uzyskany_poczatkowy=(kod_jezyka_uzyskany_poczatkowy~=kod_jezyka_tego_projektu); local czy_kod_projektu_uzyskany_poczatkowy=(kod_projektu_uzyskany_poczatkowy~=kod_projektu_tego_projektu); local html_modul=require("Module:Html"); local function AdresLinku() local kody_poczatkowe=(not projekty_nie_en and (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or(czy_kod_jezyka_uzyskany_poczatkowy and kod_jezyka_uzyskany_poczatkowy..":"..(czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or ""))); local tablica_kodow=kody_poczatkowe..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or ""); local czy_wstawiac_dwukropek=((tablica_kodow~="")and (projekty_nie_en and (czy_kod_jezyka_uzyskany_poczatkowy and ":" or "") or "") or (BiezacaWikiDwukropek() and ":" or "")); local strona;local parametry;local naglowek; if(czy_nazwa_strony_linku)then strona=html_modul.EncodeElementyAdresuStrony(nazwa_strony_linku,nil,z_kodowaniem); end; if(czy_parametry_strony)then parametry=html_modul.EncodeElementyAdresuStrony(parametry_strony,true,z_kodowaniem); parametry="?"..parametry; end; if(czy_naglowek_strony)then naglowek=html_modul.EncodeElementyAdresuStrony(naglowek_strony,nil,z_kodowaniem); naglowek="#"..naglowek; end; local zmienna_linkowa=tablica_kodow..(strona or "") ..(parametry or "")..(naglowek or ""); return zmienna_linkowa, czy_wstawiac_dwukropek; end; nazwa=nazwa and mw.ustring.gsub(nazwa,"^[%s_]*","") or nil; nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]*$","") or nil; --nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]+"," ") or nil; if(czy_ogolne and not czy_nazwa)then if(parametry_modul.CzyTak(wyswietl))then nazwa=strona_zmienna_tymczasowa; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); else if((czy_pelna_nazwa_strony_prawidlowa)and(nazwastrony~=""))then nazwa=nazwastrony; else nazwa=nazwy_modul["NAZWASTRONY"]{[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_uzyskany_poczatkowy,["kod projektu"]=kod_projektu_uzyskany_poczatkowy,}; end; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); end end; local zmienna_linkowa; local aktywny; if(not czy_wewnetrzny_z_fullurl)then local czy_wstawiac_dwukropek; zmienna_linkowa,czy_wstawiac_dwukropek=AdresLinku(); zmienna_linkowa=mw.ustring.gsub(zmienna_linkowa,"[%s_]+"," "); local czy_za=parametry_modul.CzyTak(za); if(czy_za or(nazwa and (nazwa~=zmienna_linkowa)))then zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa..(czy_nazwa and "|"..nazwa..(czy_za and za or "") or (czy_za and ("|"..zmienna_linkowa..za) or "")).."]]"..(czy_po and po or ""); else zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa.."]]"..(czy_po and po or ""); end aktywny=false; else aktywny=true; local serwer; local projekt; if(projekty_nie_en)then for kod_specjalny_projektu,kod_projektu_interwiki in pairs(wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie)do if(kod_projektu_uzyskany_poczatkowy==kod_projektu_interwiki)then projekt=kod_specjalny_projektu; end; end; end; local function Protocol(kod_projektu) local interwikimap=wiki_interwiki_modul.interwikimap; local url=interwikimap[kod_projektu]; if(not url)then return "";end; return mw.ustring.match(url,"^([^/]*)//"); end; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local nazwy_np_modul=require("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local czy_specjalna=(nazwaprzestrzeni==nazwy_np_modul.Special); local ciag_tablica_kodow_zmienna_tymczasowa=mw.ustring.gsub(strona_zmienna_tymczasowa,"[%s_]+","_"); if(((projekt)and(czy_parametry_strony)and(czy_specjalna))or((projekt)and(wersja_linku=="w")))then local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony)and(czy_specjalna))or((not projekty_nie_en)and(wersja_linku=="w")))then local techniczne_modul=require("Module:Techniczne"); local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local serwer=mw.ustring.match(wiki_nie_jezykowe,"^([^/]*//[^/]*)") local adres=serwer.."/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((projekt)and(czy_parametry_strony))or((projekt)and(wersja_linku=="wiki")))then local strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"[_%s]+","_"); local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/wiki/"..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and " "..nazwa..(parametry_modul.CzyTak(za) and za or "") or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony))or((not projekty_nie_en)and(wersja_linku=="wiki")))then local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local strona_zmienna_tymczasowa,_=mw.ustring.gsub(ciag_tablica_kodow_zmienna_tymczasowa,"[_%s]+","_"); strona_zmienna_tymczasowa=((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; strona_zmienna_tymczasowa=html_modul.EncodeHtml(strona_zmienna_tymczasowa); strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"([%%])(%d+)","%%%%%2"); strona_zmienna_tymczasowa,_=mw.ustring.gsub(wiki_nie_jezykowe,"$1",strona_zmienna_tymczasowa); local adres=strona_zmienna_tymczasowa..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); else local pudelko_modul=require("Module:Pudełko"); zmienna_linkowa=(parametry_modul.CzyTak(klucz_projektu)and ((not(klucz_projektu==pudelko_modul["Klucz projektu tego projektu"]()))and (klucz_projektu..":")or "" ) or ((parametry_modul.CzyTak(kod_jezyka_uzyskany_poczatkowy)and ((not(kod_jezyka_uzyskany_poczatkowy==pudelko_modul["Kod języka tego projektu"]()))and(kod_jezyka_uzyskany_poczatkowy..":")or "") or "")..(parametry_modul.CzyTak(kod_projektu_uzyskany_poczatkowy)and ((not(kod_projektu_uzyskany_poczatkowy==pudelko_modul["Kod projektu tego projektu"]()))and(kod_projektu_uzyskany_poczatkowy..":")or "") or ""))) ..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; local strona=(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); local adres=tostring(mw.uri.fullUrl(zmienna_linkowa))..strona; zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); end; end; return zmienna_linkowa,kod_jezyka_koncowy,kod_projektu_koncowy,strona_zmienna_tymczasowa,czy_naglowek_strony,aktywny; else local parametry_modul=require("Module:Parametry"); local html_modul=require("Module:Html"); local czy_nazwa; if(not nazwa)then nazwa=mw.ustring.match(nazwa_strony_linku,"//[^/]*/(.*)$"); nazwa=html_modul.DecodeHtml(nazwa); czy_nazwa=parametry_modul.CzyTak(nazwa); else czy_nazwa=parametry_modul.CzyTak(nazwa); end; local czy_po=parametry_modul.CzyTak(po); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"[%s_]+","_"); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"//([^/]*)/(.*)$", function(s1,s2)return "//"..s1.."/"..html_modul.EncodeHtml(s2);end) local adres=nazwa_strony_linku..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "") ..(czy_naglowek_strony and "#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony)) or ""); local zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); return zmienna_linkowa,nil,nil,nazwa_strony_linku,czy_naglowek_strony,false; end; end; function p.TworzLinkBezPrzetwarzania(klucz_projektu,kod_jezyka,kod_projektu,strona,naglowek,nazwa,za,po,z_kodowaniem) local parametry_modul=require("Module:Parametry"); local adres=(parametry_modul.CzyTak(klucz_projektu)and (klucz_projektu..":") or ((parametry_modul.CzyTak(kod_jezyka)and (kod_jezyka..":") or "")..(parametry_modul.CzyTak(kod_projektu)and (kod_projektu..":") or ""))) ..strona..(parametry_modul.CzyTak(naglowek) and ("#"..naglowek) or ""); local html_modul=require("Module:Html"); adres=html_modul.AdresProjektuEncodeHtml(adres,z_kodowaniem); local wartosc="[[:"..adres..(parametry_modul.CzyTak(nazwa) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..(po and po or ""); return wartosc; end; function p.LinkWikidane(link,klucz_projektu,kod_jezyka,kod_projektu,strona,czy_naglowek,czy_url,czy_parametry,aktywny) local wiki_modul=require("Module:Wiki"); local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nagłówek"]=czy_naglowek,["url"]=czy_url,["parametry"]=czy_parametry,["aktywny"]=aktywny,}; local nazwy_modul=require("Module:Nazwy"); local spanramka=mw.html.create('span'); spanramka:addClass(klasa); spanramka:addClass("link"); local spacja=mw.ustring.match(link," "); if(not spacja)then spanramka:addClass("bez-spacji"); end; spanramka:wikitext(link); return tostring(spanramka:allDone()); end; function p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem) local parametry_modul=require("Module:Parametry"); parametry_strony=czy_wewnetrzny_z_fullurl and parametry_strony or nil; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local html_modul=require("Module:Html"); nazwa_strony_linku=html_modul["TransformacjaKoduHtmlDoZnakuCiągu"](nazwa_strony_linku); local wartosc_parent,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,aktywny=p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem); if(parametry_modul.CzyTak(bez_znacznikow))then return wartosc_parent;end; return p.LinkWikidane(wartosc_parent,nil,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony,aktywny); end; function p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,naglowek,czy_link_url,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,__FUNKCJA) local nowa_nazwa_strony_linku; local czy_kreska_dolna;local hash;local prze_nie_main; local czy_strona_lokalna; if(not czy_analiza)then czy_kreska_dolna=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$") or mw.ustring.match(nazwa_strony_linku,":[%s_]*$"); hash=(not czy_kreska_dolna)and ((not czy_link_url) and mw.ustring.match(nazwa_strony_linku,"^[_%s]*#(.*)$") or nil) or (((czy_kreska_dolna)and(czy_link_url) and require("Module:Parametry").CzyTak(naglowek)) and naglowek or nil); if((czy_kreska_dolna)or(hash))then local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local miano_przestrzeni_nazw_maly=((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))and mw.ustring.lower(miano_przestrzeni_nazw) or miano_przestrzeni_nazw; if((not miano_przestrzeni_nazw_maly)or((miano_przestrzeni_nazw_maly=="")or(miano_przestrzeni_nazw_maly=="(main)")or(miano_przestrzeni_nazw_maly=="(główna)")))then miano_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); end; local nazwa_strony=nazwy_modul["NAZWASTRONY"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); if(nazwa_strony=="")then nowa_nazwa_strony_linku,czy_strona_lokalna=p["PrzetłumaczZnakZastępczyNaStronę"](miano_przestrzeni_nazw or "","",kod_jezyka,kod_projektu,hash); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; nowa_nazwa_strony_linku=__FUNKCJA(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main); return nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; end; p["GanerujSkładoweURL"] = function(args) local klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku; local miano_przestrzeni_nazw; local nazwa_strony_linku=args["strona"] or args["s"] or "_"; local html_modul=require("Module:Html"); nazwa_strony_linku=nazwa_strony_linku and html_modul.DecodeHtml(nazwa_strony_linku) or nil; local parametry_modul=require("Module:Parametry"); local w=args["wersja linku"] or args["w"]; local tab_w={ ["w"]=true, ["wiki"]=true, }; local wersja_linku=parametry_modul.CzyTak(w) and (tab_w[w] and w or nil) or ""; local _; local strony_modul=require("Module:Strony"); local czy_url=strony_modul.SprawdzanieURL(nazwa_strony_linku); local parametry_strony;local naglowek_strony;local nazwa;local po;local po;local za; nazwa=args["nazwa"] or args["n"]; po=args["po"] or args["p"]; za=args["za"] or args["z"]; local function DaneStrony(nazwa_strony_linku_parametr,adres) if(parametry_modul.CzyTak(nazwa_strony_linku_parametr))then if(mw.ustring.match(nazwa_strony_linku_parametr,"^/wiki/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/wiki/",""); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); elseif(mw.ustring.match(nazwa_strony_linku_parametr,"^/w/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/w/",""); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); local nazwa_strony_jednostki,parametry_strony_jednostki=html_modul["NazwaStronyZParametrówStronyAdresu"](parametry_strony,true); parametry_strony=parametry_strony_jednostki or parametry_strony; nazwa_strony_linku_parametr=nazwa_strony_jednostki or nazwa_strony_linku_parametr; else nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/(.*)$","%1"); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); end; else if((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku))or(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)))then if((not adres)or(mw.ustring.match(adres,"/$1$")))then local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku_parametr=pudelko_modul["Nazwa strony głównej projektu 2"]{[1]=kod_jezyka_do_projektu_linku,[2]=kod_projektu_do_projektu_linku,} or ""; end; end; end; parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); --nazwa=args["nazwa"] or args["n"]; local klucz_projektu_do_projektu_linku_temp=args["klucz projektu"] or args["k"]; klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku_temp) and (klucz_projektu_do_projektu_linku_temp) or klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku_temp=args["kod języka"] or args["kj"]; kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku_temp) and (kod_jezyka_do_projektu_linku_temp) or kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku_temp=args["kod projektu"] or args["kp"]; kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku_temp) and (kod_projektu_do_projektu_linku_temp) or kod_projektu_do_projektu_linku; nazwa_strony_linku=nazwa_strony_linku_parametr; czy_url=false; end; if(not czy_url)then local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["f"]; nazwa_strony_linku=parametry_modul["CzyTakCiąg"](miano_przestrzeni_nazw) and miano_przestrzeni_nazw..":"..nazwa_strony_linku or nazwa_strony_linku; DaneStrony(nazwa_strony_linku); else local html_modul=require("Module:Html"); local nazwa_strony_bez_protokolu=html_modul["UrlBezProtokołu"](nazwa_strony_linku); local serwer,nazwa_strony=html_modul["URLStrona"](nazwa_strony_bez_protokolu); local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local function SerwerWiki(serwer) local kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.(%w+)%.org"); if((not kod_jezyka_zmienna_tymczasowa)or(not kod_specjalny_projektu))then kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.[mM]%.(%w+)%.org"); end; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local kod_projektu=interwikisiostrzaneangielskie[kod_specjalny_projektu]; local kod_jezyka=kod_jezyka_zmienna_tymczasowa and (mw.language.isKnownLanguageTag(kod_jezyka_zmienna_tymczasowa) and kod_jezyka_zmienna_tymczasowa or nil) or nil; return kod_jezyka,kod_projektu; end; local function JezykoweLubAngielskieProjekty(serwer_portalu) local kod_jezyka,kod_projektu=SerwerWiki(serwer_portalu); if(kod_jezyka and kod_projektu)then kod_jezyka_do_projektu_linku=kod_jezyka; kod_projektu_do_projektu_linku=kod_projektu; klucz_projektu_do_projektu_linku=nil; DaneStrony(nazwa_strony); return true; else local pozajezykoweprojektysiostrzane=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane; local techniczne_modul=require("Module:Techniczne"); for kod, url in pairs(pozajezykoweprojektysiostrzane)do local adres=html_modul["UrlBezProtokołu"](url); local serwer_portalu,nazwa_strony_portalu=html_modul["URLStrona"](adres); if(serwer_portalu)then if((serwer_portalu==serwer)and((mw.ustring.match(nazwa_strony_portalu,"%$1"))or(nazwa_strony==nazwa_strony_portalu)))then kod_jezyka_do_projektu_linku=kod_jezyka or "en"; kod_projektu_do_projektu_linku=--[[kod_projektu or]] kod; local nazwa_strony_spreparowana=nil; if(not mw.ustring.match(adres,"/wiki/%$1$"))then if(mw.ustring.match(url,"[:/]$1$"))then local url_wzor=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](adres); url_wzor=mw.ustring.gsub(url_wzor,"(%%$1)$","(.-)"); nazwa_strony_spreparowana=mw.ustring.match(nazwa_strony_bez_protokolu,"^"..url_wzor.."$"); if(not nazwa_strony_spreparowana)then return false; end; end; end; DaneStrony(nazwa_strony_spreparowana or nazwa_strony,adres); return true; end; end; end; end; end; local function __FUNKCJA() if(mw.ustring.match(serwer,"^upload%.wikimedia%.org$"))then DaneStrony(nazwa_strony); nazwa_strony=nazwa_strony_linku; nazwa_strony_linku="Media:"..mw.ustring.match(nazwa_strony,"([^/]*)$"); local kod_projektu_do_projektu_linku2,kod_jezyka_do_projektu_linku2=mw.ustring.match(nazwa_strony,"^([^/]*)/([^/]*)/.*$"); kod_jezyka_do_projektu_linku=kod_jezyka_do_projektu_linku or kod_jezyka_do_projektu_linku2; kod_projektu_do_projektu_linku=kod_projektu_do_projektu_linku or kod_projektu_do_projektu_linku2; czy_url=false; else local juz_tak=JezykoweLubAngielskieProjekty(serwer); if(not juz_tak)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); nazwa_strony_linku=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); end; end; end; __FUNKCJA(); end; local czy_wewnetrzny_z_fullurl; if(not parametry_modul.CzyTak(parametry_strony))then if(wersja_linku=="")then if((klucz_projektu_do_projektu_linku)or(kod_jezyka_do_projektu_linku)or(kod_projektu_do_projektu_linku))then czy_wewnetrzny_z_fullurl=false; elseif(not czy_url)then czy_wewnetrzny_z_fullurl=false; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; return klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url; end; p["Link wewnętrzny"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local klucz_projektu_do_projektu_linku=args["klucz projektu"]; local kod_jezyka_do_projektu_linku=args["kod języka"]; local kod_projektu_do_projektu_linku=args["kod projektu"]; local nazwa_strony_linku=args["strona"] or "_"; local nazwa=args["nazwa"]; local czy_nazwa=parametry_modul.CzyTak(nazwa); nazwa=czy_nazwa and nazwa or nil; local po=args["po"]; local za=args["za"]; local naglowek_strony=args["nagłówek"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if(not czy_analiza)then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=czy_nazwa and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((not czy_naglowek)and(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$")))) or nil); if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek and naglowek_strony or hash,nazwa,za,po,nil,nil,nil,nil,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),czy_naglowek and naglowek_strony or hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony or hash or mw.ustring.match(nazwa_strony_linku,"#"),nil,nil); else return link; end; end; end; p["LinkURL"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if((not czy_analiza)and(not czy_url))then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=parametry_modul.CzyTak(nazwa) and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$"))) or nil); local function Bez_przetwarzania_lub_bez_znaczkow() if(parametry_modul.CzyTak(bez_przetwarzania))then local bez_znacznikow=parametry_modul.CzyTak(bez_znacznikow); local czy_parametry=parametry_modul.CzyTak(parametry_strony); local wartosc=((not czy_url)and((parametry_modul.CzyTak(klucz_projektu_do_projektu_linku)and (klucz_projektu_do_projektu_linku..":") or ((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku)and (kod_jezyka_do_projektu_linku..":") or "")..(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)and (kod_projektu_do_projektu_linku..":") or "")))..nowa_nazwa_strony_linku) or nil); local link; local po_linku=parametry_modul.CzyTak(po) and po or ""; if((not czy_url)and((czy_parametry)or(parametry_modul.CzyTak(wersja_linku))))then local adres=tostring(mw.uri.fullUrl(wartosc,"")); adres=((not parametry_modul.CzyTak(wersja_linku))or(wersja_linku=="wiki")) and adres or mw.ustring.gsub(adres,"/wiki/","/w/index.php?title=",1); local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ((((wersja_linku=="w")) and "&" or "?")..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") adres=adres..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; elseif(czy_url)then local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") local adres=nowa_nazwa_strony_linku..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; else local naglowek=(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or ""); local adres=wartosc..naglowek; link="[[:"..adres..((parametry_modul.CzyTak(nazwa)) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..po_linku; end; if not bez_znacznikow then local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony); else return link; end; end; end; local wynik=Bez_przetwarzania_lub_bez_znaczkow();if(wynik)then return wynik;end; return linki_modul.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); end; function p.UzyskajKodWikiLinku(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local wiki_modul=require("Module:Wiki"); local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local pudelko_modul=require("Module:Pudełko"); kod_jezyka_koncowy=parametry_modul.CzyTak(kod_jezyka_koncowy) and kod_jezyka_koncowy or pudelko_modul["Kod języka tego projektu"](); kod_projektu_koncowy=parametry_modul.CzyTak(kod_projektu_koncowy) and kod_projektu_koncowy or pudelko_modul["Kod projektu tego projektu"](); local aktywny; local czy_nazwa=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_nazwa or not mw.ustring.match(nazwa_strony_linku,"_+"))then if((not czy_nazwa)and((not kod_jezyka_koncowy)or(kod_jezyka_koncowy==pudelko_modul["Kod języka tego projektu"]()))and((not kod_projektu_koncowy)or(kod_projektu_koncowy==pudelko_modul["Kod projektu tego projektu"]())))then if((parametry_modul.CzyTak(naglowek_strony)) or (not args["strona"] or args["strona"]=="") or ((args["strona"])and(mw.ustring.match(args["strona"],"^[_%s]*#[_%s]*$"))or(nil)))then aktywny=false; local nazwy_modul=require("Module:Nazwy"); nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"](); end; else aktywny=true; end; else aktywny=true; local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku=pudelko_modul["Strona główna tego projektu"](); end; local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy); --- local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_pusta_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_pusta_nazwa_strony_linku)then local linki_modul=require("Module:Linki"); nazwa_strony_linku,_=linki_modul["PrzetłumaczZnakZastępczyNaStronę"]("","",kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); end; ---- local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=nil,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["strona"]=nazwa_strony_linku,["nagłówek"]=czy_naglowek_strony,["url"]=czy_url,["parametry"]=czy_parametry_strony,["aktywny"]=aktywny,}; return klasa; end; p["LinkOgólne"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["m"]; local czy_dyskusja=parametry_modul.CzyTak(args["dyskusja"] or args["d"]); local klucz_projektu_do_projektu_linku=args["klucz projektu"] or args["k"]; local kod_jezyka_do_projektu_linku=args["kod języka"] or args["kj"]; local kod_projektu_do_projektu_linku=args["kod projektu"] or args["kp"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local wyswietl_miano_przestrzeni_nazw=args["wyświetl miano przestrzeni nazw"] or args["wyświetl"] or args["w"]; local nazwa_strony_linku=args[1] or "_"; local czy_nazwa=parametry_modul.CzyTak(args[2]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; local czy_niepusta_nazwa_przestrzeni_nazw; local nazwy_modul=require("Module:Nazwy"); local czy_aktualna_wiki; if(not czy_analiza)then local tabela_nazw={}; miano_przestrzeni_nazw=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or ""; nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,nil,nil,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) if(czy_dyskusja)then local tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; nowa_nazwa_strony_linku=nazwy_modul["NAZWASTRONYDYSKUSJI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["bez zmiany adresu"]="tak",},tabela_nazw_temp); end; return nowa_nazwa_strony_linku; end); czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; local tabela_nazw={};tabela_nazw.czy_aktualna_wiki=czy_aktualna_wiki; local czy_biezaca; local czy_nazwa_strony_pusta; local wiki_modul=require("Module:Wiki"); if((czy_dyskusja)or(czy_analiza))then czy_nazwa_strony_pusta=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$"); if((not czy_nazwa_strony_pusta)or((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~="")))then if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local nazwy_modul=require("Module:Nazwy"); if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"](nowa_nazwa_strony_linku,tabela_nazw); else miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); end; czy_niepusta_nazwa_przestrzeni_nazw=parametry_modul.CzyTak(miano_przestrzeni_nazw); end; elseif(hash or czy_kreska_dolna)then czy_niepusta_nazwa_przestrzeni_nazw=true; elseif(not prze_nie_main)then miano_przestrzeni_nazw=""; czy_niepusta_nazwa_przestrzeni_nazw=false; else miano_przestrzeni_nazw=prze_nie_main; czy_niepusta_nazwa_przestrzeni_nazw=true; end; local techniczne_modul=require("Module:Techniczne"); local czy_wyswietl_miano_przestrzeni_nazw=parametry_modul.CzyTak(wyswietl_miano_przestrzeni_nazw); local function NazwaLinkuDoStrony() local function CzyPrzestrzen(miano_przestrzeni_nazw) local czy_biezaca; if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local miano_przestrzeni_nazw; if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else miano_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; end; return miano_przestrzeni_nazw; end; local function Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw) if(czy_wyswietl_miano_przestrzeni_nazw)then return nazwa; else nazwa=nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); if(tabela_nazw.m)then nazwa=mw.getContentLanguage():lcfirst(nazwa); end; return nazwa; end; end; local function Nazwa(nazwa) local ile;local ile2=0; if((czy_analiza) and (not bez_przetwarzania))then nazwa=techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nazwa_przestrzeni..":".."%s"; end; ile2=ile+1; end); else nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nowa_nazwa_strony_linku; end; ile2=ile2+1; end); end; if(ile-ile2==0)then return Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw); else return nazwa; end; end; local function NazwaFormat(wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta) if((not czy_analiza)or(bez_przetwarzania))then return nil;end; if(czy_wyswietl_miano_przestrzeni_nazw)then if(czy_nazwa_strony_pusta)then if(not miano_przestrzeni_nazw)then return "%s:%s"; else return miano_przestrzeni_nazw..((miano_przestrzeni_nazw~="") and ":" or "").."%s"; end; end; else return "%s"; end; end; if(czy_niepusta_nazwa_przestrzeni_nazw)then if(czy_wyswietl_miano_przestrzeni_nazw)then if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then nazwa_strony_linku=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa_strony_linku) or nazwa_strony_linku; if((czy_nazwa_strony_pusta)and(czy_analiza)and(not bez_przetwarzania))then nazwa_strony_linku="%s";end; ---- local aliases; local alias=args["alias miana przestrzeni nazw"] or args["alias"] or args["i"]; local czy_alias=parametry_modul.CzyTak(alias); if(czy_alias)then if((not czy_dyskusja)and(not czy_analiza))then local wiki_modul=require("Module:Wiki"); if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; end; if(czy_biezaca)then local uchwyt=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak"} if(uchwyt)then aliases=uchwyt.aliases; --miano_przestrzeni_nazw=uchwyt.name; end; else local uchwyt=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(uchwyt)then if(parametry_modul.TypeTable(uchwyt))then aliases=uchwyt.aliasy; --miano_przestrzeni_nazw=uchwyt[1]; else --miano_przestrzeni_nazw=uchwyt; aliases={}; end; end; end; end; ---- if((czy_alias)and(parametry_modul.CzyTak(aliases)))then if(parametry_modul["CzySąElementyNumerowaneTablicy"](aliases))then alias=mw.getContentLanguage():uc(alias); for _,value in pairs(aliases)do if((mw.getContentLanguage():uc(value))==alias)then return alias..":"..nazwa_strony_linku; end; end; end; end; if(not miano_przestrzeni_nazw)then return nil;end; local miano_przestrzeni_nazw_zmienna_tymczasowa; if(czy_biezaca)then miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"](nowa_nazwa_strony_linku,tabela_nazw) or nazwa_strony_linku; else miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"]{nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,tabela_nazw} or nazwa_strony_linku; end; if(not miano_przestrzeni_nazw_zmienna_tymczasowa)then return nil;end; return ((miano_przestrzeni_nazw_zmienna_tymczasowa~="") and (miano_przestrzeni_nazw_zmienna_tymczasowa..":") or "")..((((czy_analiza)and(not bez_przetwarzania))and(nazwa_strony_linku=="")) and "%s" or nazwa_strony_linku); else local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa=Nazwa(nazwa); return nazwa; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwa=nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and ("#"..hash) or nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); nazwa=Nazwa(nazwa); return nazwa; end; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; local nazwa=nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if(czy_nazwa_strony_pusta)then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; end; end; end; end; local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$"))))) or nil); local nazwa=czy_nazwa and (args[2] and (((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](args[2]) or args[2]) or nil) or NazwaLinkuDoStrony(); local po=args["po"] or args["p"]; local za=args["za"] or args["z"]; if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash,nazwa,za,po,false,nil,nil,nil,true,wyswietl_miano_przestrzeni_nazw,czy_dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash or ((not czy_kreska_dolna) and mw.ustring.match(nazwa_strony_linku,"#") or nil),nil,nil); else return link; end; end; end; function p.ZamianaKategoriiNaLinki(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local techniczne_modul=require("Module:Techniczne"); local nazwy_np_modul=wm.loadData("Module:Nazwy/Np"); local kategoria_polska=nazwy_np_modul.Category; local wzor_kategorii_polskiej=techniczne_modul["WzórDanejPrzestrzeniNazw"](kategoria_polska) tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); return tekst; end; return p; ivyabteg7xex9win2ds322fj87pplg7 538709 538708 2026-03-31T22:00:51Z Persino 2851 538709 Scribunto text/plain local p={}; p["PrzetłumaczZnakZastępczyNaStronę"]=function(nazwa_przestrzeni_nazw,nazwa_strony,kod_jezyka,kod_projektu,hash) local czy_pusta_nazwa_przestrzeni_nazw=mw.ustring.match(nazwa_przestrzeni_nazw,"^([%s_:]*)$"); local czy_pusta_nazwa_strony=mw.ustring.match(nazwa_strony,"^([%s_:]*)#.*$") or mw.ustring.match(nazwa_strony,"^([%s_:]*)$"); if(not czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony)then local tabglownestronyprojektu=mw.loadData("Module:Nazwy/przestrzenie").tabnp; local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"](nazwa_przestrzeni_nazw); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(not czy_biezaca)then local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} local nazwa_bazowa_strony=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_bazowa_strony)then local nazwa_strony_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=nazwa_bazowa_strony, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, ["kod języka bazy"]="pl", ["kod projektu bazy"]=(nazwa_kanoniczna_nazwy_przestrzeni_nazw~="Project")and "w" or "b", } if(nazwa_strony_na_innym_projekcie)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_na_innym_projekcie,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; else return nazwa_bazowa_strony,false; end; end; else local nazwy_modul=require("Module:Nazwy"); if(hash)then local nazwy_modul=require("Module:Nazwy"); local tabela_nazw={}; local prze_bierzacej_strony=nazwy_modul["NAZWAPRZESTRZENI"](nil,tabela_nazw); local nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,}; if(nazwa_przestrzeni_nazw==prze_bierzacej_strony)then return nazwy_modul["PEŁNANAZWASTRONY"](nil,tabela_nazw),true; end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.Np{["nazwa"]=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak"} local nazwa_strony_glownych_stron_projektu=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_strony_glownych_stron_projektu)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_glownych_stron_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; end; elseif czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony 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)and(hash))then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"](),true; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local tablokalnesiostrzane=wiki_interwiki_modul.tablica_lokalne_siostrzane; if(tablokalnesiostrzane[kod_projektu])then local wiki_modul=require("Module:Wiki"); local pudelko_modul=require("Module:Pudełko"); local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"](); if(not czy_biezaca)then local nazwa_strony_glownej_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=strona_glowna_tego_projektu, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, } if(nazwa_strony_glownej_na_innym_projekcie)then return nazwa_strony_glownej_na_innym_projekcie,false; end; else return strona_glowna_tego_projektu,false; end; end; end; return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; p["PoprawLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); z_kodowaniem=parametry_modul.CzyTak(z_kodowaniem); local function pojedynczy_link(link) local strona=mw.ustring.match(link,"^%[%[:?([^%[%]|]*)"); local nazwa=mw.ustring.match(link,"^%[%[[^|]*|([^%[%]]*)%]%]$") or strona; local z_kodowaniem_temp=(mw.ustring.match(strona,"%%%x%x")and true or false) or z_kodowaniem; link=p.TworzenieWikiLinku(nil,nil,nil,strona,nil,nazwa,nil,nil,false,nil,nil,nil,nil,nil,nil,nil,z_kodowaniem_temp); return link; end; return mw.ustring.gsub(argument_pierwszy,"(%[%[[^%[%]]*%]%])",function(s)return pojedynczy_link(s);end); end; p["WydobądźLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc,_=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); local specjalne_modul=require("Module:Specjalne"); wartosc=specjalne_modul["UsuńKomentarze"](wartosc); wartosc=specjalne_modul["UsuńSzablonyStylów"](wartosc); wartosc=specjalne_modul["UsuńZnaczniki"](wartosc); wartosc=specjalne_modul["UsuńKategorie"](wartosc); wartosc=specjalne_modul["UsuńWywołaniaPlików"](wartosc); wartosc=specjalne_modul["UsuńInterwiki"](wartosc); local linki_modul=require("Module:Linki"); wartosc=linki_modul["PoprawLinki"]{wartosc,z_kodowaniem}; return wartosc; end; function p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem) if(not czy_url)then local parametry_modul=require("Module:Parametry"); local czy_klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku); local czy_kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku); local czy_kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku); local czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); local czy_po=parametry_modul.CzyTak(po); if(not czy_naglowek_strony)then if(czy_nazwa_strony_linku)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; local strona_zmienna_tymczasowa=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu) local naglowek_zmienna_tymczasowa=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); if(strona_zmienna_tymczasowa and naglowek_zmienna_tymczasowa)then nazwa_strony_linku=strona_zmienna_tymczasowa; naglowek_zmienna_tymczasowa=parametry_modul["Odstępy"]{[1]=naglowek_zmienna_tymczasowa,[2]="tak",[3]="tak",}; if(parametry_modul.CzyTak(naglowek_zmienna_tymczasowa))then naglowek_strony=naglowek_zmienna_tymczasowa; czy_naglowek_strony=true; end; end; end; else naglowek_strony=parametry_modul["Odstępy"]{[1]=naglowek_strony,[2]="tak",[3]="tak",}; if(not parametry_modul.CzyTak(naglowek_strony))then czy_naglowek_strony=false; naglowek_strony=nil; end; end; --- local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local interwikimap=wiki_interwiki_modul.interwikimap; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local wiki_modul=require("Module:Wiki"); local kod_jezyka_uzyskany_poczatkowy,kod_projektu_uzyskany_poczatkowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); 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(not kod_jezyka_uzyskany_poczatkowy or not kod_projektu_uzyskany_poczatkowy)then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_uzyskany_poczatkowy or kod_jezyka_tego_projektu; kod_projektu_uzyskany_poczatkowy=kod_projektu_uzyskany_poczatkowy or kod_projektu_tego_projektu; end; local czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; local tablica_kodow={}; local kod_jezyka_koncowy;local kod_projektu_koncowy; --------------------------------------------------------------------- kod_jezyka_koncowy=kod_jezyka_uzyskany_poczatkowy; kod_projektu_koncowy=kod_projektu_uzyskany_poczatkowy; --------------------------------------------------------------------- local kod_jezyka_poczatkowy,kod_projektu_poczatkowy; if(czy_pelna_nazwa_strony_prawidlowa)then nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,kod_jezyka_poczatkowy,kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,bez_przetwarzania_kodow and tablica_kodow or nil); czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; end; ---- if(not nazwa)then nazwa=nazwa_strony_linku..(czy_naglowek_strony and ("#"..naglowek_strony) or ""); nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," "); czy_nazwa=parametry_modul.CzyTak(nazwa); end local ciag_tablica_kodow=""; if(bez_przetwarzania_kodow)then if(kod_jezyka_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_poczatkowy; else ciag_tablica_kodow=kod_jezyka_poczatkowy; end; elseif(kod_projektu_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_projektu_uzyskany_poczatkowy=kod_projektu_poczatkowy; else ciag_tablica_kodow=kod_projektu_poczatkowy; end; end; local ciag_tablica_kodow_zmienna_tymczasowa=table.concat(tablica_kodow,":"); ciag_tablica_kodow=ciag_tablica_kodow..(((ciag_tablica_kodow~="")and(ciag_tablica_kodow_zmienna_tymczasowa~=""))and ":" or "")..ciag_tablica_kodow_zmienna_tymczasowa; else kod_jezyka_uzyskany_poczatkowy=kod_jezyka_koncowy; kod_projektu_uzyskany_poczatkowy=kod_projektu_koncowy; end; local nazwy_modul=require("Module:Nazwy"); local czy_dyskusja=parametry_modul.CzyTak(dyskusja); local pierwsza_litera=((czy_pelna_nazwa_strony_prawidlowa)and(not czy_dyskusja)) and mw.ustring.match(nazwa_strony_linku,"^(%a)") or nil; local tabela_nazw={}; local nazwaprzestrzeni=czy_pelna_nazwa_strony_prawidlowa and ((not czy_dyskusja)and nazwy_modul["NAZWAPRZESTRZENI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy},tabela_nazw) or nazwy_modul["PRZESTRZEŃDYSKUSJI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw)) or ""; local nazwastrony=czy_pelna_nazwa_strony_prawidlowa and nazwy_modul["NAZWASTRONY"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) or ""; local linki_modul=require("Module:Linki"); local strona_inna_zmienna_tymczasowa,czy_strona_lokalna=linki_modul["PrzetłumaczZnakZastępczyNaStronę"](nazwaprzestrzeni,nazwastrony,kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); local czy_pelna_nazwa_strony_prawidlowa=((czy_pelna_nazwa_strony_prawidlowa)and(parametry_modul["CzyTakCiąg"](strona_inna_zmienna_tymczasowa) and not mw.ustring.match(strona_inna_zmienna_tymczasowa,"^[%s_:]+$")) or strona_inna_zmienna_tymczasowa); local function TabelaNazw()tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki;return tabela_nazw_temp;end; if(nazwastrony=="")then local tabela_nazw=TabelaNazw(); local nazwa_strony=nazwy_modul["NAZWASTRONY"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) local techniczne_modul=require("Module:Techniczne"); local nowa_nazwa_strony=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](nazwa_strony); if(nazwa)then local f,ile=mw.ustring.gsub(nazwa,"%%s",function()return nil;end); if(ile==1)then nazwa=mw.ustring.format(nazwa,nowa_nazwa_strony) or nil; elseif(ile==2)then local nowa_nazwa_przestrzeni=nazwy_modul[(czy_dyskusja) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw); if(tabela_nazw.czy_aktualna_wiki)then nowa_nazwa_przestrzeni=nazwy_modul.Np{nazwa=nowa_nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nowa_nazwa_przestrzeni=nazwy_modul.NpDane{nazwa=nowa_nazwa_przestrzeni,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or nowa_nazwa_przestrzeni; end; nazwa=mw.ustring.format(nazwa,nowa_nazwa_przestrzeni,nowa_nazwa_strony) or nil; end; end; end; strona_inna_zmienna_tymczasowa=strona_inna_zmienna_tymczasowa or nazwa_strony_linku; local function NazwaStronyDyskusji(strona) if(czy_dyskusja and czy_pelna_nazwa_strony_prawidlowa)then return nazwy_modul["NAZWASTRONYDYSKUSJI"]({[1]=strona,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()); end; return strona; end; local strona_zmienna_tymczasowa=NazwaStronyDyskusji(strona_inna_zmienna_tymczasowa); nazwa_strony_linku=((not czy_strona_lokalna or ((czy_dyskusja)and(nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw())~=nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()))))and strona_zmienna_tymczasowa or ""); nazwa_strony_linku=pierwsza_litera and mw.ustring.gsub(nazwa_strony_linku,"^["..mw.getContentLanguage():ucfirst(pierwsza_litera)..mw.getContentLanguage():lcfirst(pierwsza_litera).."]",pierwsza_litera) or nazwa_strony_linku; czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local function BiezacaWikiDwukropek() local czy_biezace_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; local czy_wstawiac_dwukropek; if(czy_biezace_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((nazwaprzestrzeni==nazwy_np_modul.Category)or(nazwaprzestrzeni==nazwy_np_modul.File))then czy_wstawiac_dwukropek=true; end; end; return czy_wstawiac_dwukropek; end; local pudelko_modul=require("Module:Pudełko"); local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane; local projekty_nie_en=jezykowe_projekty[kod_projektu_uzyskany_poczatkowy]; local czy_kod_jezyka_uzyskany_poczatkowy=(kod_jezyka_uzyskany_poczatkowy~=kod_jezyka_tego_projektu); local czy_kod_projektu_uzyskany_poczatkowy=(kod_projektu_uzyskany_poczatkowy~=kod_projektu_tego_projektu); local html_modul=require("Module:Html"); local function AdresLinku() local kody_poczatkowe=(not projekty_nie_en and (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or(czy_kod_jezyka_uzyskany_poczatkowy and kod_jezyka_uzyskany_poczatkowy..":"..(czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or ""))); local tablica_kodow=kody_poczatkowe..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or ""); local czy_wstawiac_dwukropek=((tablica_kodow~="")and (projekty_nie_en and (czy_kod_jezyka_uzyskany_poczatkowy and ":" or "") or "") or (BiezacaWikiDwukropek() and ":" or "")); local strona;local parametry;local naglowek; if(czy_nazwa_strony_linku)then strona=html_modul.EncodeElementyAdresuStrony(nazwa_strony_linku,nil,z_kodowaniem); end; if(czy_parametry_strony)then parametry=html_modul.EncodeElementyAdresuStrony(parametry_strony,true,z_kodowaniem); parametry="?"..parametry; end; if(czy_naglowek_strony)then naglowek=html_modul.EncodeElementyAdresuStrony(naglowek_strony,nil,z_kodowaniem); naglowek="#"..naglowek; end; local zmienna_linkowa=tablica_kodow..(strona or "") ..(parametry or "")..(naglowek or ""); return zmienna_linkowa, czy_wstawiac_dwukropek; end; nazwa=nazwa and mw.ustring.gsub(nazwa,"^[%s_]*","") or nil; nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]*$","") or nil; --nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]+"," ") or nil; if(czy_ogolne and not czy_nazwa)then if(parametry_modul.CzyTak(wyswietl))then nazwa=strona_zmienna_tymczasowa; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); else if((czy_pelna_nazwa_strony_prawidlowa)and(nazwastrony~=""))then nazwa=nazwastrony; else nazwa=nazwy_modul["NAZWASTRONY"]{[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_uzyskany_poczatkowy,["kod projektu"]=kod_projektu_uzyskany_poczatkowy,}; end; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); end end; local zmienna_linkowa; local aktywny; if(not czy_wewnetrzny_z_fullurl)then local czy_wstawiac_dwukropek; zmienna_linkowa,czy_wstawiac_dwukropek=AdresLinku(); zmienna_linkowa=mw.ustring.gsub(zmienna_linkowa,"[%s_]+"," "); local czy_za=parametry_modul.CzyTak(za); if(czy_za or(nazwa and (nazwa~=zmienna_linkowa)))then zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa..(czy_nazwa and "|"..nazwa..(czy_za and za or "") or (czy_za and ("|"..zmienna_linkowa..za) or "")).."]]"..(czy_po and po or ""); else zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa.."]]"..(czy_po and po or ""); end aktywny=false; else aktywny=true; local serwer; local projekt; if(projekty_nie_en)then for kod_specjalny_projektu,kod_projektu_interwiki in pairs(wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie)do if(kod_projektu_uzyskany_poczatkowy==kod_projektu_interwiki)then projekt=kod_specjalny_projektu; end; end; end; local function Protocol(kod_projektu) local interwikimap=wiki_interwiki_modul.interwikimap; local url=interwikimap[kod_projektu]; if(not url)then return "";end; return mw.ustring.match(url,"^([^/]*)//"); end; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local nazwy_np_modul=require("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local czy_specjalna=(nazwaprzestrzeni==nazwy_np_modul.Special); local ciag_tablica_kodow_zmienna_tymczasowa=mw.ustring.gsub(strona_zmienna_tymczasowa,"[%s_]+","_"); if(((projekt)and(czy_parametry_strony)and(czy_specjalna))or((projekt)and(wersja_linku=="w")))then local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony)and(czy_specjalna))or((not projekty_nie_en)and(wersja_linku=="w")))then local techniczne_modul=require("Module:Techniczne"); local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local serwer=mw.ustring.match(wiki_nie_jezykowe,"^([^/]*//[^/]*)") local adres=serwer.."/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((projekt)and(czy_parametry_strony))or((projekt)and(wersja_linku=="wiki")))then local strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"[_%s]+","_"); local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/wiki/"..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and " "..nazwa..(parametry_modul.CzyTak(za) and za or "") or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony))or((not projekty_nie_en)and(wersja_linku=="wiki")))then local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local strona_zmienna_tymczasowa,_=mw.ustring.gsub(ciag_tablica_kodow_zmienna_tymczasowa,"[_%s]+","_"); strona_zmienna_tymczasowa=((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; strona_zmienna_tymczasowa=html_modul.EncodeHtml(strona_zmienna_tymczasowa); strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"([%%])(%d+)","%%%%%2"); strona_zmienna_tymczasowa,_=mw.ustring.gsub(wiki_nie_jezykowe,"$1",strona_zmienna_tymczasowa); local adres=strona_zmienna_tymczasowa..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); else local pudelko_modul=require("Module:Pudełko"); zmienna_linkowa=(parametry_modul.CzyTak(klucz_projektu)and ((not(klucz_projektu==pudelko_modul["Klucz projektu tego projektu"]()))and (klucz_projektu..":")or "" ) or ((parametry_modul.CzyTak(kod_jezyka_uzyskany_poczatkowy)and ((not(kod_jezyka_uzyskany_poczatkowy==pudelko_modul["Kod języka tego projektu"]()))and(kod_jezyka_uzyskany_poczatkowy..":")or "") or "")..(parametry_modul.CzyTak(kod_projektu_uzyskany_poczatkowy)and ((not(kod_projektu_uzyskany_poczatkowy==pudelko_modul["Kod projektu tego projektu"]()))and(kod_projektu_uzyskany_poczatkowy..":")or "") or ""))) ..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; local strona=(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); local adres=tostring(mw.uri.fullUrl(zmienna_linkowa))..strona; zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); end; end; return zmienna_linkowa,kod_jezyka_koncowy,kod_projektu_koncowy,strona_zmienna_tymczasowa,czy_naglowek_strony,aktywny; else local parametry_modul=require("Module:Parametry"); local html_modul=require("Module:Html"); local czy_nazwa; if(not nazwa)then nazwa=mw.ustring.match(nazwa_strony_linku,"//[^/]*/(.*)$"); nazwa=html_modul.DecodeHtml(nazwa); czy_nazwa=parametry_modul.CzyTak(nazwa); else czy_nazwa=parametry_modul.CzyTak(nazwa); end; local czy_po=parametry_modul.CzyTak(po); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"[%s_]+","_"); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"//([^/]*)/(.*)$", function(s1,s2)return "//"..s1.."/"..html_modul.EncodeHtml(s2);end) local adres=nazwa_strony_linku..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "") ..(czy_naglowek_strony and "#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony)) or ""); local zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); return zmienna_linkowa,nil,nil,nazwa_strony_linku,czy_naglowek_strony,false; end; end; function p.TworzLinkBezPrzetwarzania(klucz_projektu,kod_jezyka,kod_projektu,strona,naglowek,nazwa,za,po,z_kodowaniem) local parametry_modul=require("Module:Parametry"); local adres=(parametry_modul.CzyTak(klucz_projektu)and (klucz_projektu..":") or ((parametry_modul.CzyTak(kod_jezyka)and (kod_jezyka..":") or "")..(parametry_modul.CzyTak(kod_projektu)and (kod_projektu..":") or ""))) ..strona..(parametry_modul.CzyTak(naglowek) and ("#"..naglowek) or ""); local html_modul=require("Module:Html"); adres=html_modul.AdresProjektuEncodeHtml(adres,z_kodowaniem); local wartosc="[[:"..adres..(parametry_modul.CzyTak(nazwa) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..(po and po or ""); return wartosc; end; function p.LinkWikidane(link,klucz_projektu,kod_jezyka,kod_projektu,strona,czy_naglowek,czy_url,czy_parametry,aktywny) local wiki_modul=require("Module:Wiki"); local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nagłówek"]=czy_naglowek,["url"]=czy_url,["parametry"]=czy_parametry,["aktywny"]=aktywny,}; local nazwy_modul=require("Module:Nazwy"); local spanramka=mw.html.create('span'); spanramka:addClass(klasa); spanramka:addClass("link"); local spacja=string.match(link," "); if(not spacja)then spanramka:addClass("bez-spacji"); end; spanramka:wikitext(link); return tostring(spanramka:allDone()); end; function p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem) local parametry_modul=require("Module:Parametry"); parametry_strony=czy_wewnetrzny_z_fullurl and parametry_strony or nil; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local html_modul=require("Module:Html"); nazwa_strony_linku=html_modul["TransformacjaKoduHtmlDoZnakuCiągu"](nazwa_strony_linku); local wartosc_parent,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,aktywny=p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem); if(parametry_modul.CzyTak(bez_znacznikow))then return wartosc_parent;end; return p.LinkWikidane(wartosc_parent,nil,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony,aktywny); end; function p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,naglowek,czy_link_url,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,__FUNKCJA) local nowa_nazwa_strony_linku; local czy_kreska_dolna;local hash;local prze_nie_main; local czy_strona_lokalna; if(not czy_analiza)then czy_kreska_dolna=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$") or mw.ustring.match(nazwa_strony_linku,":[%s_]*$"); hash=(not czy_kreska_dolna)and ((not czy_link_url) and mw.ustring.match(nazwa_strony_linku,"^[_%s]*#(.*)$") or nil) or (((czy_kreska_dolna)and(czy_link_url) and require("Module:Parametry").CzyTak(naglowek)) and naglowek or nil); if((czy_kreska_dolna)or(hash))then local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local miano_przestrzeni_nazw_maly=((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))and mw.ustring.lower(miano_przestrzeni_nazw) or miano_przestrzeni_nazw; if((not miano_przestrzeni_nazw_maly)or((miano_przestrzeni_nazw_maly=="")or(miano_przestrzeni_nazw_maly=="(main)")or(miano_przestrzeni_nazw_maly=="(główna)")))then miano_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); end; local nazwa_strony=nazwy_modul["NAZWASTRONY"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); if(nazwa_strony=="")then nowa_nazwa_strony_linku,czy_strona_lokalna=p["PrzetłumaczZnakZastępczyNaStronę"](miano_przestrzeni_nazw or "","",kod_jezyka,kod_projektu,hash); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; nowa_nazwa_strony_linku=__FUNKCJA(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main); return nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; end; p["GanerujSkładoweURL"] = function(args) local klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku; local miano_przestrzeni_nazw; local nazwa_strony_linku=args["strona"] or args["s"] or "_"; local html_modul=require("Module:Html"); nazwa_strony_linku=nazwa_strony_linku and html_modul.DecodeHtml(nazwa_strony_linku) or nil; local parametry_modul=require("Module:Parametry"); local w=args["wersja linku"] or args["w"]; local tab_w={ ["w"]=true, ["wiki"]=true, }; local wersja_linku=parametry_modul.CzyTak(w) and (tab_w[w] and w or nil) or ""; local _; local strony_modul=require("Module:Strony"); local czy_url=strony_modul.SprawdzanieURL(nazwa_strony_linku); local parametry_strony;local naglowek_strony;local nazwa;local po;local po;local za; nazwa=args["nazwa"] or args["n"]; po=args["po"] or args["p"]; za=args["za"] or args["z"]; local function DaneStrony(nazwa_strony_linku_parametr,adres) if(parametry_modul.CzyTak(nazwa_strony_linku_parametr))then if(mw.ustring.match(nazwa_strony_linku_parametr,"^/wiki/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/wiki/",""); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); elseif(mw.ustring.match(nazwa_strony_linku_parametr,"^/w/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/w/",""); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); local nazwa_strony_jednostki,parametry_strony_jednostki=html_modul["NazwaStronyZParametrówStronyAdresu"](parametry_strony,true); parametry_strony=parametry_strony_jednostki or parametry_strony; nazwa_strony_linku_parametr=nazwa_strony_jednostki or nazwa_strony_linku_parametr; else nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/(.*)$","%1"); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); end; else if((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku))or(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)))then if((not adres)or(mw.ustring.match(adres,"/$1$")))then local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku_parametr=pudelko_modul["Nazwa strony głównej projektu 2"]{[1]=kod_jezyka_do_projektu_linku,[2]=kod_projektu_do_projektu_linku,} or ""; end; end; end; parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); --nazwa=args["nazwa"] or args["n"]; local klucz_projektu_do_projektu_linku_temp=args["klucz projektu"] or args["k"]; klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku_temp) and (klucz_projektu_do_projektu_linku_temp) or klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku_temp=args["kod języka"] or args["kj"]; kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku_temp) and (kod_jezyka_do_projektu_linku_temp) or kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku_temp=args["kod projektu"] or args["kp"]; kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku_temp) and (kod_projektu_do_projektu_linku_temp) or kod_projektu_do_projektu_linku; nazwa_strony_linku=nazwa_strony_linku_parametr; czy_url=false; end; if(not czy_url)then local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["f"]; nazwa_strony_linku=parametry_modul["CzyTakCiąg"](miano_przestrzeni_nazw) and miano_przestrzeni_nazw..":"..nazwa_strony_linku or nazwa_strony_linku; DaneStrony(nazwa_strony_linku); else local html_modul=require("Module:Html"); local nazwa_strony_bez_protokolu=html_modul["UrlBezProtokołu"](nazwa_strony_linku); local serwer,nazwa_strony=html_modul["URLStrona"](nazwa_strony_bez_protokolu); local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local function SerwerWiki(serwer) local kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.(%w+)%.org"); if((not kod_jezyka_zmienna_tymczasowa)or(not kod_specjalny_projektu))then kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.[mM]%.(%w+)%.org"); end; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local kod_projektu=interwikisiostrzaneangielskie[kod_specjalny_projektu]; local kod_jezyka=kod_jezyka_zmienna_tymczasowa and (mw.language.isKnownLanguageTag(kod_jezyka_zmienna_tymczasowa) and kod_jezyka_zmienna_tymczasowa or nil) or nil; return kod_jezyka,kod_projektu; end; local function JezykoweLubAngielskieProjekty(serwer_portalu) local kod_jezyka,kod_projektu=SerwerWiki(serwer_portalu); if(kod_jezyka and kod_projektu)then kod_jezyka_do_projektu_linku=kod_jezyka; kod_projektu_do_projektu_linku=kod_projektu; klucz_projektu_do_projektu_linku=nil; DaneStrony(nazwa_strony); return true; else local pozajezykoweprojektysiostrzane=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane; local techniczne_modul=require("Module:Techniczne"); for kod, url in pairs(pozajezykoweprojektysiostrzane)do local adres=html_modul["UrlBezProtokołu"](url); local serwer_portalu,nazwa_strony_portalu=html_modul["URLStrona"](adres); if(serwer_portalu)then if((serwer_portalu==serwer)and((mw.ustring.match(nazwa_strony_portalu,"%$1"))or(nazwa_strony==nazwa_strony_portalu)))then kod_jezyka_do_projektu_linku=kod_jezyka or "en"; kod_projektu_do_projektu_linku=--[[kod_projektu or]] kod; local nazwa_strony_spreparowana=nil; if(not mw.ustring.match(adres,"/wiki/%$1$"))then if(mw.ustring.match(url,"[:/]$1$"))then local url_wzor=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](adres); url_wzor=mw.ustring.gsub(url_wzor,"(%%$1)$","(.-)"); nazwa_strony_spreparowana=mw.ustring.match(nazwa_strony_bez_protokolu,"^"..url_wzor.."$"); if(not nazwa_strony_spreparowana)then return false; end; end; end; DaneStrony(nazwa_strony_spreparowana or nazwa_strony,adres); return true; end; end; end; end; end; local function __FUNKCJA() if(mw.ustring.match(serwer,"^upload%.wikimedia%.org$"))then DaneStrony(nazwa_strony); nazwa_strony=nazwa_strony_linku; nazwa_strony_linku="Media:"..mw.ustring.match(nazwa_strony,"([^/]*)$"); local kod_projektu_do_projektu_linku2,kod_jezyka_do_projektu_linku2=mw.ustring.match(nazwa_strony,"^([^/]*)/([^/]*)/.*$"); kod_jezyka_do_projektu_linku=kod_jezyka_do_projektu_linku or kod_jezyka_do_projektu_linku2; kod_projektu_do_projektu_linku=kod_projektu_do_projektu_linku or kod_projektu_do_projektu_linku2; czy_url=false; else local juz_tak=JezykoweLubAngielskieProjekty(serwer); if(not juz_tak)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); nazwa_strony_linku=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); end; end; end; __FUNKCJA(); end; local czy_wewnetrzny_z_fullurl; if(not parametry_modul.CzyTak(parametry_strony))then if(wersja_linku=="")then if((klucz_projektu_do_projektu_linku)or(kod_jezyka_do_projektu_linku)or(kod_projektu_do_projektu_linku))then czy_wewnetrzny_z_fullurl=false; elseif(not czy_url)then czy_wewnetrzny_z_fullurl=false; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; return klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url; end; p["Link wewnętrzny"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local klucz_projektu_do_projektu_linku=args["klucz projektu"]; local kod_jezyka_do_projektu_linku=args["kod języka"]; local kod_projektu_do_projektu_linku=args["kod projektu"]; local nazwa_strony_linku=args["strona"] or "_"; local nazwa=args["nazwa"]; local czy_nazwa=parametry_modul.CzyTak(nazwa); nazwa=czy_nazwa and nazwa or nil; local po=args["po"]; local za=args["za"]; local naglowek_strony=args["nagłówek"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if(not czy_analiza)then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=czy_nazwa and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((not czy_naglowek)and(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$")))) or nil); if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek and naglowek_strony or hash,nazwa,za,po,nil,nil,nil,nil,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),czy_naglowek and naglowek_strony or hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony or hash or mw.ustring.match(nazwa_strony_linku,"#"),nil,nil); else return link; end; end; end; p["LinkURL"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if((not czy_analiza)and(not czy_url))then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=parametry_modul.CzyTak(nazwa) and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$"))) or nil); local function Bez_przetwarzania_lub_bez_znaczkow() if(parametry_modul.CzyTak(bez_przetwarzania))then local bez_znacznikow=parametry_modul.CzyTak(bez_znacznikow); local czy_parametry=parametry_modul.CzyTak(parametry_strony); local wartosc=((not czy_url)and((parametry_modul.CzyTak(klucz_projektu_do_projektu_linku)and (klucz_projektu_do_projektu_linku..":") or ((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku)and (kod_jezyka_do_projektu_linku..":") or "")..(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)and (kod_projektu_do_projektu_linku..":") or "")))..nowa_nazwa_strony_linku) or nil); local link; local po_linku=parametry_modul.CzyTak(po) and po or ""; if((not czy_url)and((czy_parametry)or(parametry_modul.CzyTak(wersja_linku))))then local adres=tostring(mw.uri.fullUrl(wartosc,"")); adres=((not parametry_modul.CzyTak(wersja_linku))or(wersja_linku=="wiki")) and adres or mw.ustring.gsub(adres,"/wiki/","/w/index.php?title=",1); local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ((((wersja_linku=="w")) and "&" or "?")..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") adres=adres..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; elseif(czy_url)then local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") local adres=nowa_nazwa_strony_linku..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; else local naglowek=(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or ""); local adres=wartosc..naglowek; link="[[:"..adres..((parametry_modul.CzyTak(nazwa)) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..po_linku; end; if not bez_znacznikow then local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony); else return link; end; end; end; local wynik=Bez_przetwarzania_lub_bez_znaczkow();if(wynik)then return wynik;end; return linki_modul.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); end; function p.UzyskajKodWikiLinku(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local wiki_modul=require("Module:Wiki"); local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local pudelko_modul=require("Module:Pudełko"); kod_jezyka_koncowy=parametry_modul.CzyTak(kod_jezyka_koncowy) and kod_jezyka_koncowy or pudelko_modul["Kod języka tego projektu"](); kod_projektu_koncowy=parametry_modul.CzyTak(kod_projektu_koncowy) and kod_projektu_koncowy or pudelko_modul["Kod projektu tego projektu"](); local aktywny; local czy_nazwa=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_nazwa or not mw.ustring.match(nazwa_strony_linku,"_+"))then if((not czy_nazwa)and((not kod_jezyka_koncowy)or(kod_jezyka_koncowy==pudelko_modul["Kod języka tego projektu"]()))and((not kod_projektu_koncowy)or(kod_projektu_koncowy==pudelko_modul["Kod projektu tego projektu"]())))then if((parametry_modul.CzyTak(naglowek_strony)) or (not args["strona"] or args["strona"]=="") or ((args["strona"])and(mw.ustring.match(args["strona"],"^[_%s]*#[_%s]*$"))or(nil)))then aktywny=false; local nazwy_modul=require("Module:Nazwy"); nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"](); end; else aktywny=true; end; else aktywny=true; local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku=pudelko_modul["Strona główna tego projektu"](); end; local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy); --- local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_pusta_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_pusta_nazwa_strony_linku)then local linki_modul=require("Module:Linki"); nazwa_strony_linku,_=linki_modul["PrzetłumaczZnakZastępczyNaStronę"]("","",kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); end; ---- local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=nil,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["strona"]=nazwa_strony_linku,["nagłówek"]=czy_naglowek_strony,["url"]=czy_url,["parametry"]=czy_parametry_strony,["aktywny"]=aktywny,}; return klasa; end; p["LinkOgólne"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["m"]; local czy_dyskusja=parametry_modul.CzyTak(args["dyskusja"] or args["d"]); local klucz_projektu_do_projektu_linku=args["klucz projektu"] or args["k"]; local kod_jezyka_do_projektu_linku=args["kod języka"] or args["kj"]; local kod_projektu_do_projektu_linku=args["kod projektu"] or args["kp"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local wyswietl_miano_przestrzeni_nazw=args["wyświetl miano przestrzeni nazw"] or args["wyświetl"] or args["w"]; local nazwa_strony_linku=args[1] or "_"; local czy_nazwa=parametry_modul.CzyTak(args[2]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; local czy_niepusta_nazwa_przestrzeni_nazw; local nazwy_modul=require("Module:Nazwy"); local czy_aktualna_wiki; if(not czy_analiza)then local tabela_nazw={}; miano_przestrzeni_nazw=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or ""; nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,nil,nil,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) if(czy_dyskusja)then local tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; nowa_nazwa_strony_linku=nazwy_modul["NAZWASTRONYDYSKUSJI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["bez zmiany adresu"]="tak",},tabela_nazw_temp); end; return nowa_nazwa_strony_linku; end); czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; local tabela_nazw={};tabela_nazw.czy_aktualna_wiki=czy_aktualna_wiki; local czy_biezaca; local czy_nazwa_strony_pusta; local wiki_modul=require("Module:Wiki"); if((czy_dyskusja)or(czy_analiza))then czy_nazwa_strony_pusta=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$"); if((not czy_nazwa_strony_pusta)or((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~="")))then if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local nazwy_modul=require("Module:Nazwy"); if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"](nowa_nazwa_strony_linku,tabela_nazw); else miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); end; czy_niepusta_nazwa_przestrzeni_nazw=parametry_modul.CzyTak(miano_przestrzeni_nazw); end; elseif(hash or czy_kreska_dolna)then czy_niepusta_nazwa_przestrzeni_nazw=true; elseif(not prze_nie_main)then miano_przestrzeni_nazw=""; czy_niepusta_nazwa_przestrzeni_nazw=false; else miano_przestrzeni_nazw=prze_nie_main; czy_niepusta_nazwa_przestrzeni_nazw=true; end; local techniczne_modul=require("Module:Techniczne"); local czy_wyswietl_miano_przestrzeni_nazw=parametry_modul.CzyTak(wyswietl_miano_przestrzeni_nazw); local function NazwaLinkuDoStrony() local function CzyPrzestrzen(miano_przestrzeni_nazw) local czy_biezaca; if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local miano_przestrzeni_nazw; if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else miano_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; end; return miano_przestrzeni_nazw; end; local function Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw) if(czy_wyswietl_miano_przestrzeni_nazw)then return nazwa; else nazwa=nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); if(tabela_nazw.m)then nazwa=mw.getContentLanguage():lcfirst(nazwa); end; return nazwa; end; end; local function Nazwa(nazwa) local ile;local ile2=0; if((czy_analiza) and (not bez_przetwarzania))then nazwa=techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nazwa_przestrzeni..":".."%s"; end; ile2=ile+1; end); else nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nowa_nazwa_strony_linku; end; ile2=ile2+1; end); end; if(ile-ile2==0)then return Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw); else return nazwa; end; end; local function NazwaFormat(wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta) if((not czy_analiza)or(bez_przetwarzania))then return nil;end; if(czy_wyswietl_miano_przestrzeni_nazw)then if(czy_nazwa_strony_pusta)then if(not miano_przestrzeni_nazw)then return "%s:%s"; else return miano_przestrzeni_nazw..((miano_przestrzeni_nazw~="") and ":" or "").."%s"; end; end; else return "%s"; end; end; if(czy_niepusta_nazwa_przestrzeni_nazw)then if(czy_wyswietl_miano_przestrzeni_nazw)then if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then nazwa_strony_linku=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa_strony_linku) or nazwa_strony_linku; if((czy_nazwa_strony_pusta)and(czy_analiza)and(not bez_przetwarzania))then nazwa_strony_linku="%s";end; ---- local aliases; local alias=args["alias miana przestrzeni nazw"] or args["alias"] or args["i"]; local czy_alias=parametry_modul.CzyTak(alias); if(czy_alias)then if((not czy_dyskusja)and(not czy_analiza))then local wiki_modul=require("Module:Wiki"); if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; end; if(czy_biezaca)then local uchwyt=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak"} if(uchwyt)then aliases=uchwyt.aliases; --miano_przestrzeni_nazw=uchwyt.name; end; else local uchwyt=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(uchwyt)then if(parametry_modul.TypeTable(uchwyt))then aliases=uchwyt.aliasy; --miano_przestrzeni_nazw=uchwyt[1]; else --miano_przestrzeni_nazw=uchwyt; aliases={}; end; end; end; end; ---- if((czy_alias)and(parametry_modul.CzyTak(aliases)))then if(parametry_modul["CzySąElementyNumerowaneTablicy"](aliases))then alias=mw.getContentLanguage():uc(alias); for _,value in pairs(aliases)do if((mw.getContentLanguage():uc(value))==alias)then return alias..":"..nazwa_strony_linku; end; end; end; end; if(not miano_przestrzeni_nazw)then return nil;end; local miano_przestrzeni_nazw_zmienna_tymczasowa; if(czy_biezaca)then miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"](nowa_nazwa_strony_linku,tabela_nazw) or nazwa_strony_linku; else miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"]{nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,tabela_nazw} or nazwa_strony_linku; end; if(not miano_przestrzeni_nazw_zmienna_tymczasowa)then return nil;end; return ((miano_przestrzeni_nazw_zmienna_tymczasowa~="") and (miano_przestrzeni_nazw_zmienna_tymczasowa..":") or "")..((((czy_analiza)and(not bez_przetwarzania))and(nazwa_strony_linku=="")) and "%s" or nazwa_strony_linku); else local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa=Nazwa(nazwa); return nazwa; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwa=nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and ("#"..hash) or nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); nazwa=Nazwa(nazwa); return nazwa; end; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; local nazwa=nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if(czy_nazwa_strony_pusta)then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; end; end; end; end; local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$"))))) or nil); local nazwa=czy_nazwa and (args[2] and (((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](args[2]) or args[2]) or nil) or NazwaLinkuDoStrony(); local po=args["po"] or args["p"]; local za=args["za"] or args["z"]; if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash,nazwa,za,po,false,nil,nil,nil,true,wyswietl_miano_przestrzeni_nazw,czy_dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash or ((not czy_kreska_dolna) and mw.ustring.match(nazwa_strony_linku,"#") or nil),nil,nil); else return link; end; end; end; function p.ZamianaKategoriiNaLinki(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local techniczne_modul=require("Module:Techniczne"); local nazwy_np_modul=wm.loadData("Module:Nazwy/Np"); local kategoria_polska=nazwy_np_modul.Category; local wzor_kategorii_polskiej=techniczne_modul["WzórDanejPrzestrzeniNazw"](kategoria_polska) tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); return tekst; end; return p; c8p00ilr32yg0d71tlg7hyk9patwtbf 538711 538709 2026-03-31T22:29:42Z Persino 2851 538711 Scribunto text/plain local p={}; p["PrzetłumaczZnakZastępczyNaStronę"]=function(nazwa_przestrzeni_nazw,nazwa_strony,kod_jezyka,kod_projektu,hash) local czy_pusta_nazwa_przestrzeni_nazw=mw.ustring.match(nazwa_przestrzeni_nazw,"^([%s_:]*)$"); local czy_pusta_nazwa_strony=mw.ustring.match(nazwa_strony,"^([%s_:]*)#.*$") or mw.ustring.match(nazwa_strony,"^([%s_:]*)$"); if(not czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony)then local tabglownestronyprojektu=mw.loadData("Module:Nazwy/przestrzenie").tabnp; local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"](nazwa_przestrzeni_nazw); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(not czy_biezaca)then local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} local nazwa_bazowa_strony=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_bazowa_strony)then local nazwa_strony_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=nazwa_bazowa_strony, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, ["kod języka bazy"]="pl", ["kod projektu bazy"]=(nazwa_kanoniczna_nazwy_przestrzeni_nazw~="Project")and "w" or "b", } if(nazwa_strony_na_innym_projekcie)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_na_innym_projekcie,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; else return nazwa_bazowa_strony,false; end; end; else local nazwy_modul=require("Module:Nazwy"); if(hash)then local nazwy_modul=require("Module:Nazwy"); local tabela_nazw={}; local prze_bierzacej_strony=nazwy_modul["NAZWAPRZESTRZENI"](nil,tabela_nazw); local nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,}; if(nazwa_przestrzeni_nazw==prze_bierzacej_strony)then return nazwy_modul["PEŁNANAZWASTRONY"](nil,tabela_nazw),true; end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa_kanoniczna_nazwy_przestrzeni_nazw=nazwy_modul.Np{["nazwa"]=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["przedmiotowa"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak"} local nazwa_strony_glownych_stron_projektu=tabglownestronyprojektu[nazwa_kanoniczna_nazwy_przestrzeni_nazw]; if(nazwa_strony_glownych_stron_projektu)then local nazwa_strony=nazwy_modul["NAZWASTRONY"]({["nazwa"]=nazwa_strony_glownych_stron_projektu}); return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; end; elseif czy_pusta_nazwa_przestrzeni_nazw and czy_pusta_nazwa_strony 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)and(hash))then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"](),true; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local tablokalnesiostrzane=wiki_interwiki_modul.tablica_lokalne_siostrzane; if(tablokalnesiostrzane[kod_projektu])then local wiki_modul=require("Module:Wiki"); local pudelko_modul=require("Module:Pudełko"); local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"](); if(not czy_biezaca)then local nazwa_strony_glownej_na_innym_projekcie=wiki_modul.WikidaneOdpowiednikStrony{ ["nazwa strony"]=strona_glowna_tego_projektu, ["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu, } if(nazwa_strony_glownej_na_innym_projekcie)then return nazwa_strony_glownej_na_innym_projekcie,false; end; else return strona_glowna_tego_projektu,false; end; end; end; return ((nazwa_przestrzeni_nazw~="")and (nazwa_przestrzeni_nazw..":") or "")..nazwa_strony,false; end; p["PoprawLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); z_kodowaniem=parametry_modul.CzyTak(z_kodowaniem); local function pojedynczy_link(link) local strona=mw.ustring.match(link,"^%[%[:?([^%[%]|]*)"); local nazwa=mw.ustring.match(link,"^%[%[[^|]*|([^%[%]]*)%]%]$") or strona; local z_kodowaniem_temp=(mw.ustring.match(strona,"%%%x%x")and true or false) or z_kodowaniem; link=p.TworzenieWikiLinku(nil,nil,nil,strona,nil,nazwa,nil,nil,false,nil,nil,nil,nil,nil,nil,nil,z_kodowaniem_temp); return link; end; return mw.ustring.gsub(argument_pierwszy,"(%[%[[^%[%]]*%]%])",function(s)return pojedynczy_link(s);end); end; p["WydobądźLinki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc,_=PobierzParametr(1); local z_kodowaniem=PobierzParametr("uri") or PobierzParametr(2); local specjalne_modul=require("Module:Specjalne"); wartosc=specjalne_modul["UsuńKomentarze"](wartosc); wartosc=specjalne_modul["UsuńSzablonyStylów"](wartosc); wartosc=specjalne_modul["UsuńZnaczniki"](wartosc); wartosc=specjalne_modul["UsuńKategorie"](wartosc); wartosc=specjalne_modul["UsuńWywołaniaPlików"](wartosc); wartosc=specjalne_modul["UsuńInterwiki"](wartosc); local linki_modul=require("Module:Linki"); wartosc=linki_modul["PoprawLinki"]{wartosc,z_kodowaniem}; return wartosc; end; function p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem) if(not czy_url)then local parametry_modul=require("Module:Parametry"); local czy_klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku); local czy_kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku); local czy_kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku); local czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); local czy_po=parametry_modul.CzyTak(po); if(not czy_naglowek_strony)then if(czy_nazwa_strony_linku)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; local strona_zmienna_tymczasowa=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu) local naglowek_zmienna_tymczasowa=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); if(strona_zmienna_tymczasowa and naglowek_zmienna_tymczasowa)then nazwa_strony_linku=strona_zmienna_tymczasowa; naglowek_zmienna_tymczasowa=parametry_modul["Odstępy"]{[1]=naglowek_zmienna_tymczasowa,[2]="tak",[3]="tak",}; if(parametry_modul.CzyTak(naglowek_zmienna_tymczasowa))then naglowek_strony=naglowek_zmienna_tymczasowa; czy_naglowek_strony=true; end; end; end; else naglowek_strony=parametry_modul["Odstępy"]{[1]=naglowek_strony,[2]="tak",[3]="tak",}; if(not parametry_modul.CzyTak(naglowek_strony))then czy_naglowek_strony=false; naglowek_strony=nil; end; end; --- local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local interwikimap=wiki_interwiki_modul.interwikimap; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local wiki_modul=require("Module:Wiki"); local kod_jezyka_uzyskany_poczatkowy,kod_projektu_uzyskany_poczatkowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); 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(not kod_jezyka_uzyskany_poczatkowy or not kod_projektu_uzyskany_poczatkowy)then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_uzyskany_poczatkowy or kod_jezyka_tego_projektu; kod_projektu_uzyskany_poczatkowy=kod_projektu_uzyskany_poczatkowy or kod_projektu_tego_projektu; end; local czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; local tablica_kodow={}; local kod_jezyka_koncowy;local kod_projektu_koncowy; --------------------------------------------------------------------- kod_jezyka_koncowy=kod_jezyka_uzyskany_poczatkowy; kod_projektu_koncowy=kod_projektu_uzyskany_poczatkowy; --------------------------------------------------------------------- local kod_jezyka_poczatkowy,kod_projektu_poczatkowy; if(czy_pelna_nazwa_strony_prawidlowa)then nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,kod_jezyka_poczatkowy,kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy,bez_przetwarzania_kodow and tablica_kodow or nil); czy_pelna_nazwa_strony_prawidlowa=parametry_modul["CzyTakCiąg"](nazwa_strony_linku) and not mw.ustring.match(nazwa_strony_linku,"^[%s_:]+$") or nil; end; ---- if(not nazwa)then nazwa=nazwa_strony_linku..(czy_naglowek_strony and ("#"..naglowek_strony) or ""); nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," "); czy_nazwa=parametry_modul.CzyTak(nazwa); end local ciag_tablica_kodow=""; if(bez_przetwarzania_kodow)then if(kod_jezyka_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_jezyka_uzyskany_poczatkowy=kod_jezyka_poczatkowy; else ciag_tablica_kodow=kod_jezyka_poczatkowy; end; elseif(kod_projektu_poczatkowy)then if((kod_jezyka_uzyskany_poczatkowy==kod_jezyka_tego_projektu)and(kod_projektu_uzyskany_poczatkowy==kod_projektu_tego_projektu))then kod_projektu_uzyskany_poczatkowy=kod_projektu_poczatkowy; else ciag_tablica_kodow=kod_projektu_poczatkowy; end; end; local ciag_tablica_kodow_zmienna_tymczasowa=table.concat(tablica_kodow,":"); ciag_tablica_kodow=ciag_tablica_kodow..(((ciag_tablica_kodow~="")and(ciag_tablica_kodow_zmienna_tymczasowa~=""))and ":" or "")..ciag_tablica_kodow_zmienna_tymczasowa; else kod_jezyka_uzyskany_poczatkowy=kod_jezyka_koncowy; kod_projektu_uzyskany_poczatkowy=kod_projektu_koncowy; end; local nazwy_modul=require("Module:Nazwy"); local czy_dyskusja=parametry_modul.CzyTak(dyskusja); local pierwsza_litera=((czy_pelna_nazwa_strony_prawidlowa)and(not czy_dyskusja)) and mw.ustring.match(nazwa_strony_linku,"^(%a)") or nil; local tabela_nazw={}; local nazwaprzestrzeni=czy_pelna_nazwa_strony_prawidlowa and ((not czy_dyskusja)and nazwy_modul["NAZWAPRZESTRZENI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy},tabela_nazw) or nazwy_modul["PRZESTRZEŃDYSKUSJI"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw)) or ""; local nazwastrony=czy_pelna_nazwa_strony_prawidlowa and nazwy_modul["NAZWASTRONY"]({[1]=nazwa_strony_linku,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) or ""; local linki_modul=require("Module:Linki"); local strona_inna_zmienna_tymczasowa,czy_strona_lokalna=linki_modul["PrzetłumaczZnakZastępczyNaStronę"](nazwaprzestrzeni,nazwastrony,kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); local czy_pelna_nazwa_strony_prawidlowa=((czy_pelna_nazwa_strony_prawidlowa)and(parametry_modul["CzyTakCiąg"](strona_inna_zmienna_tymczasowa) and not mw.ustring.match(strona_inna_zmienna_tymczasowa,"^[%s_:]+$")) or strona_inna_zmienna_tymczasowa); local function TabelaNazw()tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki;return tabela_nazw_temp;end; if(nazwastrony=="")then local tabela_nazw=TabelaNazw(); local nazwa_strony=nazwy_modul["NAZWASTRONY"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw) local techniczne_modul=require("Module:Techniczne"); local nowa_nazwa_strony=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](nazwa_strony); if(nazwa)then local f,ile=mw.ustring.gsub(nazwa,"%%s",function()return nil;end); if(ile==1)then nazwa=mw.ustring.format(nazwa,nowa_nazwa_strony) or nil; elseif(ile==2)then local nowa_nazwa_przestrzeni=nazwy_modul[(czy_dyskusja) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},tabela_nazw); if(tabela_nazw.czy_aktualna_wiki)then nowa_nazwa_przestrzeni=nazwy_modul.Np{nazwa=nowa_nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nowa_nazwa_przestrzeni=nazwy_modul.NpDane{nazwa=nowa_nazwa_przestrzeni,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or nowa_nazwa_przestrzeni; end; nazwa=mw.ustring.format(nazwa,nowa_nazwa_przestrzeni,nowa_nazwa_strony) or nil; end; end; end; strona_inna_zmienna_tymczasowa=strona_inna_zmienna_tymczasowa or nazwa_strony_linku; local function NazwaStronyDyskusji(strona) if(czy_dyskusja and czy_pelna_nazwa_strony_prawidlowa)then return nazwy_modul["NAZWASTRONYDYSKUSJI"]({[1]=strona,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()); end; return strona; end; local strona_zmienna_tymczasowa=NazwaStronyDyskusji(strona_inna_zmienna_tymczasowa); nazwa_strony_linku=((not czy_strona_lokalna or ((czy_dyskusja)and(nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_inna_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw())~=nazwy_modul["NAZWAPRZESTRZENI"]({[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,},TabelaNazw()))))and strona_zmienna_tymczasowa or ""); nazwa_strony_linku=pierwsza_litera and mw.ustring.gsub(nazwa_strony_linku,"^["..mw.getContentLanguage():ucfirst(pierwsza_litera)..mw.getContentLanguage():lcfirst(pierwsza_litera).."]",pierwsza_litera) or nazwa_strony_linku; czy_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); local function BiezacaWikiDwukropek() local czy_biezace_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; local czy_wstawiac_dwukropek; if(czy_biezace_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((nazwaprzestrzeni==nazwy_np_modul.Category)or(nazwaprzestrzeni==nazwy_np_modul.File))then czy_wstawiac_dwukropek=true; end; end; return czy_wstawiac_dwukropek; end; local pudelko_modul=require("Module:Pudełko"); local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane; local projekty_nie_en=jezykowe_projekty[kod_projektu_uzyskany_poczatkowy]; local czy_kod_jezyka_uzyskany_poczatkowy=(kod_jezyka_uzyskany_poczatkowy~=kod_jezyka_tego_projektu); local czy_kod_projektu_uzyskany_poczatkowy=(kod_projektu_uzyskany_poczatkowy~=kod_projektu_tego_projektu); local html_modul=require("Module:Html"); local function AdresLinku() local kody_poczatkowe=(not projekty_nie_en and (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or(czy_kod_jezyka_uzyskany_poczatkowy and kod_jezyka_uzyskany_poczatkowy..":"..(czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or "") or (czy_kod_projektu_uzyskany_poczatkowy and kod_projektu_uzyskany_poczatkowy..":" or ""))); local tablica_kodow=kody_poczatkowe..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or ""); local czy_wstawiac_dwukropek=((tablica_kodow~="")and (projekty_nie_en and (czy_kod_jezyka_uzyskany_poczatkowy and ":" or "") or "") or (BiezacaWikiDwukropek() and ":" or "")); local strona;local parametry;local naglowek; if(czy_nazwa_strony_linku)then strona=html_modul.EncodeElementyAdresuStrony(nazwa_strony_linku,nil,z_kodowaniem); end; if(czy_parametry_strony)then parametry=html_modul.EncodeElementyAdresuStrony(parametry_strony,true,z_kodowaniem); parametry="?"..parametry; end; if(czy_naglowek_strony)then naglowek=html_modul.EncodeElementyAdresuStrony(naglowek_strony,nil,z_kodowaniem); naglowek="#"..naglowek; end; local zmienna_linkowa=tablica_kodow..(strona or "") ..(parametry or "")..(naglowek or ""); return zmienna_linkowa, czy_wstawiac_dwukropek; end; nazwa=nazwa and mw.ustring.gsub(nazwa,"^[%s_]*","") or nil; nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]*$","") or nil; --nazwa=nazwa and mw.ustring.gsub(nazwa,"[%s_]+"," ") or nil; if(czy_ogolne and not czy_nazwa)then if(parametry_modul.CzyTak(wyswietl))then nazwa=strona_zmienna_tymczasowa; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); else if((czy_pelna_nazwa_strony_prawidlowa)and(nazwastrony~=""))then nazwa=nazwastrony; else nazwa=nazwy_modul["NAZWASTRONY"]{[1]=strona_zmienna_tymczasowa,["kod języka"]=kod_jezyka_uzyskany_poczatkowy,["kod projektu"]=kod_projektu_uzyskany_poczatkowy,}; end; czy_nazwa=parametry_modul["CzyTakCiąg"](nazwa); end end; local zmienna_linkowa; local aktywny; if(not czy_wewnetrzny_z_fullurl)then local czy_wstawiac_dwukropek; zmienna_linkowa,czy_wstawiac_dwukropek=AdresLinku(); zmienna_linkowa=mw.ustring.gsub(zmienna_linkowa,"[%s_]+"," "); local czy_za=parametry_modul.CzyTak(za); if(czy_za or(nazwa and (nazwa~=zmienna_linkowa)))then zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa..(czy_nazwa and "|"..nazwa..(czy_za and za or "") or (czy_za and ("|"..zmienna_linkowa..za) or "")).."]]"..(czy_po and po or ""); else zmienna_linkowa="[["..czy_wstawiac_dwukropek..zmienna_linkowa.."]]"..(czy_po and po or ""); end aktywny=false; else aktywny=true; local serwer; local projekt; if(projekty_nie_en)then for kod_specjalny_projektu,kod_projektu_interwiki in pairs(wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie)do if(kod_projektu_uzyskany_poczatkowy==kod_projektu_interwiki)then projekt=kod_specjalny_projektu; end; end; end; local function Protocol(kod_projektu) local interwikimap=wiki_interwiki_modul.interwikimap; local url=interwikimap[kod_projektu]; if(not url)then return "";end; return mw.ustring.match(url,"^([^/]*)//"); end; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local nazwy_np_modul=require("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local czy_specjalna=(nazwaprzestrzeni==nazwy_np_modul.Special); local ciag_tablica_kodow_zmienna_tymczasowa=mw.ustring.gsub(strona_zmienna_tymczasowa,"[%s_]+","_"); if(((projekt)and(czy_parametry_strony)and(czy_specjalna))or((projekt)and(wersja_linku=="w")))then local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony)and(czy_specjalna))or((not projekty_nie_en)and(wersja_linku=="w")))then local techniczne_modul=require("Module:Techniczne"); local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local serwer=mw.ustring.match(wiki_nie_jezykowe,"^([^/]*//[^/]*)") local adres=serwer.."/w/index.php?title="..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and "&"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za)and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((projekt)and(czy_parametry_strony))or((projekt)and(wersja_linku=="wiki")))then local strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"[_%s]+","_"); local adres=Protocol(kod_projektu_uzyskany_poczatkowy).."//"..kod_jezyka_uzyskany_poczatkowy.."."..projekt..".org/wiki/"..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..html_modul.EncodeHtml(strona_zmienna_tymczasowa)..(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and " "..nazwa..(parametry_modul.CzyTak(za) and za or "") or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); elseif(((not projekty_nie_en)and(czy_parametry_strony))or((not projekty_nie_en)and(wersja_linku=="wiki")))then local wiki_nie_jezykowe=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane[kod_projektu_uzyskany_poczatkowy]; local strona_zmienna_tymczasowa,_=mw.ustring.gsub(ciag_tablica_kodow_zmienna_tymczasowa,"[_%s]+","_"); strona_zmienna_tymczasowa=((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; strona_zmienna_tymczasowa=html_modul.EncodeHtml(strona_zmienna_tymczasowa); strona_zmienna_tymczasowa,_=mw.ustring.gsub(strona_zmienna_tymczasowa,"([%%])(%d+)","%%%%%2"); strona_zmienna_tymczasowa,_=mw.ustring.gsub(wiki_nie_jezykowe,"$1",strona_zmienna_tymczasowa); local adres=strona_zmienna_tymczasowa..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); else local pudelko_modul=require("Module:Pudełko"); zmienna_linkowa=(parametry_modul.CzyTak(klucz_projektu)and ((not(klucz_projektu==pudelko_modul["Klucz projektu tego projektu"]()))and (klucz_projektu..":")or "" ) or ((parametry_modul.CzyTak(kod_jezyka_uzyskany_poczatkowy)and ((not(kod_jezyka_uzyskany_poczatkowy==pudelko_modul["Kod języka tego projektu"]()))and(kod_jezyka_uzyskany_poczatkowy..":")or "") or "")..(parametry_modul.CzyTak(kod_projektu_uzyskany_poczatkowy)and ((not(kod_projektu_uzyskany_poczatkowy==pudelko_modul["Kod projektu tego projektu"]()))and(kod_projektu_uzyskany_poczatkowy..":")or "") or ""))) ..((ciag_tablica_kodow~="")and (ciag_tablica_kodow..":") or "")..strona_zmienna_tymczasowa; local strona=(czy_parametry_strony and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(czy_naglowek_strony and ("#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony))) or ""); local adres=tostring(mw.uri.fullUrl(zmienna_linkowa))..strona; zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); end; end; return zmienna_linkowa,kod_jezyka_koncowy,kod_projektu_koncowy,strona_zmienna_tymczasowa,czy_naglowek_strony,aktywny; else local parametry_modul=require("Module:Parametry"); local html_modul=require("Module:Html"); local czy_nazwa; if(not nazwa)then nazwa=mw.ustring.match(nazwa_strony_linku,"//[^/]*/(.*)$"); nazwa=html_modul.DecodeHtml(nazwa); czy_nazwa=parametry_modul.CzyTak(nazwa); else czy_nazwa=parametry_modul.CzyTak(nazwa); end; local czy_po=parametry_modul.CzyTak(po); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"[%s_]+","_"); nazwa_strony_linku=mw.ustring.gsub(nazwa_strony_linku,"//([^/]*)/(.*)$", function(s1,s2)return "//"..s1.."/"..html_modul.EncodeHtml(s2);end) local adres=nazwa_strony_linku..(czy_parametry_strony and "?"..html_modul.EncodeParametryHtml(parametry_strony) or "") ..(czy_naglowek_strony and "#"..html_modul.ZnakiSpecjalneWikiLinku(html_modul.EncodeHtml(naglowek_strony)) or ""); local zmienna_linkowa="["..adres..(czy_nazwa and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or "")).."]"..(czy_po and po or ""); return zmienna_linkowa,nil,nil,nazwa_strony_linku,czy_naglowek_strony,false; end; end; function p.TworzLinkBezPrzetwarzania(klucz_projektu,kod_jezyka,kod_projektu,strona,naglowek,nazwa,za,po,z_kodowaniem) local parametry_modul=require("Module:Parametry"); local adres=(parametry_modul.CzyTak(klucz_projektu)and (klucz_projektu..":") or ((parametry_modul.CzyTak(kod_jezyka)and (kod_jezyka..":") or "")..(parametry_modul.CzyTak(kod_projektu)and (kod_projektu..":") or ""))) ..strona..(parametry_modul.CzyTak(naglowek) and ("#"..naglowek) or ""); local html_modul=require("Module:Html"); adres=html_modul.AdresProjektuEncodeHtml(adres,z_kodowaniem); local wartosc="[[:"..adres..(parametry_modul.CzyTak(nazwa) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..(po and po or ""); return wartosc; end; function p.LinkWikidane(link,klucz_projektu,kod_jezyka,kod_projektu,strona,czy_naglowek,czy_url,czy_parametry,aktywny) local wiki_modul=require("Module:Wiki"); local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nagłówek"]=czy_naglowek,["url"]=czy_url,["parametry"]=czy_parametry,["aktywny"]=aktywny,}; local nazwy_modul=require("Module:Nazwy"); local spanramka=mw.html.create('span'); spanramka:addClass(klasa); spanramka:addClass("link"); spanramka:wikitext(link); return tostring(spanramka:allDone()); end; function p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem) local parametry_modul=require("Module:Parametry"); parametry_strony=czy_wewnetrzny_z_fullurl and parametry_strony or nil; local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local html_modul=require("Module:Html"); nazwa_strony_linku=html_modul["TransformacjaKoduHtmlDoZnakuCiągu"](nazwa_strony_linku); local wartosc_parent,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,aktywny=p.TworzenieWikiLinku(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,czy_ogolne,wyswietl,dyskusja,bez_przetwarzania_kodow,z_kodowaniem); if(parametry_modul.CzyTak(bez_znacznikow))then return wartosc_parent;end; return p.LinkWikidane(wartosc_parent,nil,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony,aktywny); end; function p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,naglowek,czy_link_url,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,__FUNKCJA) local nowa_nazwa_strony_linku; local czy_kreska_dolna;local hash;local prze_nie_main; local czy_strona_lokalna; if(not czy_analiza)then czy_kreska_dolna=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$") or mw.ustring.match(nazwa_strony_linku,":[%s_]*$"); hash=(not czy_kreska_dolna)and ((not czy_link_url) and mw.ustring.match(nazwa_strony_linku,"^[_%s]*#(.*)$") or nil) or (((czy_kreska_dolna)and(czy_link_url) and require("Module:Parametry").CzyTak(naglowek)) and naglowek or nil); if((czy_kreska_dolna)or(hash))then local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local miano_przestrzeni_nazw_maly=((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))and mw.ustring.lower(miano_przestrzeni_nazw) or miano_przestrzeni_nazw; if((not miano_przestrzeni_nazw_maly)or((miano_przestrzeni_nazw_maly=="")or(miano_przestrzeni_nazw_maly=="(main)")or(miano_przestrzeni_nazw_maly=="(główna)")))then miano_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); end; local nazwa_strony=nazwy_modul["NAZWASTRONY"]({nazwa=nazwa_strony_linku,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,},tabela_nazw); if(nazwa_strony=="")then nowa_nazwa_strony_linku,czy_strona_lokalna=p["PrzetłumaczZnakZastępczyNaStronę"](miano_przestrzeni_nazw or "","",kod_jezyka,kod_projektu,hash); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; nowa_nazwa_strony_linku=__FUNKCJA(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main); return nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; end; p["GanerujSkładoweURL"] = function(args) local klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku; local miano_przestrzeni_nazw; local nazwa_strony_linku=args["strona"] or args["s"] or "_"; local html_modul=require("Module:Html"); nazwa_strony_linku=nazwa_strony_linku and html_modul.DecodeHtml(nazwa_strony_linku) or nil; local parametry_modul=require("Module:Parametry"); local w=args["wersja linku"] or args["w"]; local tab_w={ ["w"]=true, ["wiki"]=true, }; local wersja_linku=parametry_modul.CzyTak(w) and (tab_w[w] and w or nil) or ""; local _; local strony_modul=require("Module:Strony"); local czy_url=strony_modul.SprawdzanieURL(nazwa_strony_linku); local parametry_strony;local naglowek_strony;local nazwa;local po;local po;local za; nazwa=args["nazwa"] or args["n"]; po=args["po"] or args["p"]; za=args["za"] or args["z"]; local function DaneStrony(nazwa_strony_linku_parametr,adres) if(parametry_modul.CzyTak(nazwa_strony_linku_parametr))then if(mw.ustring.match(nazwa_strony_linku_parametr,"^/wiki/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/wiki/",""); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); elseif(mw.ustring.match(nazwa_strony_linku_parametr,"^/w/"))then nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/w/",""); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); local nazwa_strony_jednostki,parametry_strony_jednostki=html_modul["NazwaStronyZParametrówStronyAdresu"](parametry_strony,true); parametry_strony=parametry_strony_jednostki or parametry_strony; nazwa_strony_linku_parametr=nazwa_strony_jednostki or nazwa_strony_linku_parametr; else nazwa_strony_linku_parametr,_=mw.ustring.gsub(nazwa_strony_linku_parametr,"^/(.*)$","%1"); local tabela_nazw_adresu={}; local html_modul=require("Module:Html"); naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); nazwa_strony_linku_parametr=html_modul["NazwaStronyAdresu"](nazwa_strony_linku_parametr,true,tabela_nazw_adresu); end; else if((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku))or(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)))then if((not adres)or(mw.ustring.match(adres,"/$1$")))then local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku_parametr=pudelko_modul["Nazwa strony głównej projektu 2"]{[1]=kod_jezyka_do_projektu_linku,[2]=kod_projektu_do_projektu_linku,} or ""; end; end; end; parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); --nazwa=args["nazwa"] or args["n"]; local klucz_projektu_do_projektu_linku_temp=args["klucz projektu"] or args["k"]; klucz_projektu_do_projektu_linku=parametry_modul.CzyTak(klucz_projektu_do_projektu_linku_temp) and (klucz_projektu_do_projektu_linku_temp) or klucz_projektu_do_projektu_linku; local kod_jezyka_do_projektu_linku_temp=args["kod języka"] or args["kj"]; kod_jezyka_do_projektu_linku=parametry_modul.CzyTak(kod_jezyka_do_projektu_linku_temp) and (kod_jezyka_do_projektu_linku_temp) or kod_jezyka_do_projektu_linku; local kod_projektu_do_projektu_linku_temp=args["kod projektu"] or args["kp"]; kod_projektu_do_projektu_linku=parametry_modul.CzyTak(kod_projektu_do_projektu_linku_temp) and (kod_projektu_do_projektu_linku_temp) or kod_projektu_do_projektu_linku; nazwa_strony_linku=nazwa_strony_linku_parametr; czy_url=false; end; if(not czy_url)then local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["f"]; nazwa_strony_linku=parametry_modul["CzyTakCiąg"](miano_przestrzeni_nazw) and miano_przestrzeni_nazw..":"..nazwa_strony_linku or nazwa_strony_linku; DaneStrony(nazwa_strony_linku); else local html_modul=require("Module:Html"); local nazwa_strony_bez_protokolu=html_modul["UrlBezProtokołu"](nazwa_strony_linku); local serwer,nazwa_strony=html_modul["URLStrona"](nazwa_strony_bez_protokolu); local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local function SerwerWiki(serwer) local kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.(%w+)%.org"); if((not kod_jezyka_zmienna_tymczasowa)or(not kod_specjalny_projektu))then kod_jezyka_zmienna_tymczasowa,kod_specjalny_projektu=mw.ustring.match(serwer,"^(%w+)%.[mM]%.(%w+)%.org"); end; local interwikisiostrzaneangielskie=wiki_interwiki_modul.tablica_interwiki_siostrzane_angielskie; local kod_projektu=interwikisiostrzaneangielskie[kod_specjalny_projektu]; local kod_jezyka=kod_jezyka_zmienna_tymczasowa and (mw.language.isKnownLanguageTag(kod_jezyka_zmienna_tymczasowa) and kod_jezyka_zmienna_tymczasowa or nil) or nil; return kod_jezyka,kod_projektu; end; local function JezykoweLubAngielskieProjekty(serwer_portalu) local kod_jezyka,kod_projektu=SerwerWiki(serwer_portalu); if(kod_jezyka and kod_projektu)then kod_jezyka_do_projektu_linku=kod_jezyka; kod_projektu_do_projektu_linku=kod_projektu; klucz_projektu_do_projektu_linku=nil; DaneStrony(nazwa_strony); return true; else local pozajezykoweprojektysiostrzane=wiki_interwiki_modul.tablica_poza_lingwistyczne_projekty_siostrzane; local techniczne_modul=require("Module:Techniczne"); for kod, url in pairs(pozajezykoweprojektysiostrzane)do local adres=html_modul["UrlBezProtokołu"](url); local serwer_portalu,nazwa_strony_portalu=html_modul["URLStrona"](adres); if(serwer_portalu)then if((serwer_portalu==serwer)and((mw.ustring.match(nazwa_strony_portalu,"%$1"))or(nazwa_strony==nazwa_strony_portalu)))then kod_jezyka_do_projektu_linku=kod_jezyka or "en"; kod_projektu_do_projektu_linku=--[[kod_projektu or]] kod; local nazwa_strony_spreparowana=nil; if(not mw.ustring.match(adres,"/wiki/%$1$"))then if(mw.ustring.match(url,"[:/]$1$"))then local url_wzor=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](adres); url_wzor=mw.ustring.gsub(url_wzor,"(%%$1)$","(.-)"); nazwa_strony_spreparowana=mw.ustring.match(nazwa_strony_bez_protokolu,"^"..url_wzor.."$"); if(not nazwa_strony_spreparowana)then return false; end; end; end; DaneStrony(nazwa_strony_spreparowana or nazwa_strony,adres); return true; end; end; end; end; end; local function __FUNKCJA() if(mw.ustring.match(serwer,"^upload%.wikimedia%.org$"))then DaneStrony(nazwa_strony); nazwa_strony=nazwa_strony_linku; nazwa_strony_linku="Media:"..mw.ustring.match(nazwa_strony,"([^/]*)$"); local kod_projektu_do_projektu_linku2,kod_jezyka_do_projektu_linku2=mw.ustring.match(nazwa_strony,"^([^/]*)/([^/]*)/.*$"); kod_jezyka_do_projektu_linku=kod_jezyka_do_projektu_linku or kod_jezyka_do_projektu_linku2; kod_projektu_do_projektu_linku=kod_projektu_do_projektu_linku or kod_projektu_do_projektu_linku2; czy_url=false; else local juz_tak=JezykoweLubAngielskieProjekty(serwer); if(not juz_tak)then local html_modul=require("Module:Html"); local tabela_nazw_adresu={}; naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); naglowek_strony=parametry_modul.CzyTak(naglowek_strony) and naglowek_strony or (args["nagłówek"] or args["g"]); parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); parametry_strony=parametry_modul.CzyTak(parametry_strony) and parametry_strony or (args["parametry"] or args["c"]); nazwa_strony_linku=html_modul["NazwaStronyAdresu"](nazwa_strony_linku,true,tabela_nazw_adresu); end; end; end; __FUNKCJA(); end; local czy_wewnetrzny_z_fullurl; if(not parametry_modul.CzyTak(parametry_strony))then if(wersja_linku=="")then if((klucz_projektu_do_projektu_linku)or(kod_jezyka_do_projektu_linku)or(kod_projektu_do_projektu_linku))then czy_wewnetrzny_z_fullurl=false; elseif(not czy_url)then czy_wewnetrzny_z_fullurl=false; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; else czy_wewnetrzny_z_fullurl=true; end; return klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url; end; p["Link wewnętrzny"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local klucz_projektu_do_projektu_linku=args["klucz projektu"]; local kod_jezyka_do_projektu_linku=args["kod języka"]; local kod_projektu_do_projektu_linku=args["kod projektu"]; local nazwa_strony_linku=args["strona"] or "_"; local nazwa=args["nazwa"]; local czy_nazwa=parametry_modul.CzyTak(nazwa); nazwa=czy_nazwa and nazwa or nil; local po=args["po"]; local za=args["za"]; local naglowek_strony=args["nagłówek"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if(not czy_analiza)then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=czy_nazwa and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((not czy_naglowek)and(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$")))) or nil); if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek and naglowek_strony or hash,nazwa,za,po,nil,nil,nil,nil,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),czy_naglowek and naglowek_strony or hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony or hash or mw.ustring.match(nazwa_strony_linku,"#"),nil,nil); else return link; end; end; end; p["LinkURL"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local czy_naglowek=parametry_modul.CzyTak(naglowek_strony); local hash;local czy_kreska_dolna;local prze_nie_main;local czy_strona_lokalna;local nowa_nazwa_strony_linku; if((not czy_analiza)and(not czy_url))then nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa("",nazwa_strony_linku,naglowek_strony,czy_naglowek,nil,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,{},function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) return nowa_nazwa_strony_linku; end); nazwa=parametry_modul.CzyTak(nazwa) and nazwa or (hash and ("#"..hash) or nil); else nowa_nazwa_strony_linku=nazwa_strony_linku; end; local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$"))) or nil); local function Bez_przetwarzania_lub_bez_znaczkow() if(parametry_modul.CzyTak(bez_przetwarzania))then local bez_znacznikow=parametry_modul.CzyTak(bez_znacznikow); local czy_parametry=parametry_modul.CzyTak(parametry_strony); local wartosc=((not czy_url)and((parametry_modul.CzyTak(klucz_projektu_do_projektu_linku)and (klucz_projektu_do_projektu_linku..":") or ((parametry_modul.CzyTak(kod_jezyka_do_projektu_linku)and (kod_jezyka_do_projektu_linku..":") or "")..(parametry_modul.CzyTak(kod_projektu_do_projektu_linku)and (kod_projektu_do_projektu_linku..":") or "")))..nowa_nazwa_strony_linku) or nil); local link; local po_linku=parametry_modul.CzyTak(po) and po or ""; if((not czy_url)and((czy_parametry)or(parametry_modul.CzyTak(wersja_linku))))then local adres=tostring(mw.uri.fullUrl(wartosc,"")); adres=((not parametry_modul.CzyTak(wersja_linku))or(wersja_linku=="wiki")) and adres or mw.ustring.gsub(adres,"/wiki/","/w/index.php?title=",1); local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ((((wersja_linku=="w")) and "&" or "?")..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") adres=adres..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; elseif(czy_url)then local html_modul=require("Module:Html"); local parametry_i_naglowek=((czy_parametry)and ("?"..html_modul.EncodeParametryHtml(parametry_strony)) or "")..(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or "") local adres=nowa_nazwa_strony_linku..parametry_i_naglowek; link= "["..adres..(parametry_modul.CzyTak(nazwa) and (" "..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and (" "..adres..za) or (" "..nowa_nazwa_strony_linku))).."]"..po_linku; else local naglowek=(parametry_modul.CzyTak(naglowek_strony) and ("#"..mw.ustring.gsub(naglowek_strony,"[%s_]+","_")) or ""); local adres=wartosc..naglowek; link="[[:"..adres..((parametry_modul.CzyTak(nazwa)) and ("|"..nazwa..(parametry_modul.CzyTak(za) and za or "")) or (parametry_modul.CzyTak(za) and ("|"..adres..za) or "")).."]]"..po_linku; end; if not bez_znacznikow then local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,czy_naglowek_strony,czy_url,czy_parametry_strony); else return link; end; end; end; local wynik=Bez_przetwarzania_lub_bez_znaczkow();if(wynik)then return wynik;end; return linki_modul.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url,nil,nil,nil,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); end; function p.UzyskajKodWikiLinku(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local linki_modul=require("Module:Linki"); local klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nazwa_strony_linku,naglowek_strony,nazwa,za,po,czy_wewnetrzny_z_fullurl,parametry_strony,wersja_linku,czy_url=linki_modul["GanerujSkładoweURL"](args); local wiki_modul=require("Module:Wiki"); local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku); local pudelko_modul=require("Module:Pudełko"); kod_jezyka_koncowy=parametry_modul.CzyTak(kod_jezyka_koncowy) and kod_jezyka_koncowy or pudelko_modul["Kod języka tego projektu"](); kod_projektu_koncowy=parametry_modul.CzyTak(kod_projektu_koncowy) and kod_projektu_koncowy or pudelko_modul["Kod projektu tego projektu"](); local aktywny; local czy_nazwa=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_nazwa or not mw.ustring.match(nazwa_strony_linku,"_+"))then if((not czy_nazwa)and((not kod_jezyka_koncowy)or(kod_jezyka_koncowy==pudelko_modul["Kod języka tego projektu"]()))and((not kod_projektu_koncowy)or(kod_projektu_koncowy==pudelko_modul["Kod projektu tego projektu"]())))then if((parametry_modul.CzyTak(naglowek_strony)) or (not args["strona"] or args["strona"]=="") or ((args["strona"])and(mw.ustring.match(args["strona"],"^[_%s]*#[_%s]*$"))or(nil)))then aktywny=false; local nazwy_modul=require("Module:Nazwy"); nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"](); end; else aktywny=true; end; else aktywny=true; local pudelko_modul=require("Module:Pudełko"); nazwa_strony_linku=pudelko_modul["Strona główna tego projektu"](); end; local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy); --- local czy_parametry_strony=parametry_modul.CzyTak(parametry_strony); local czy_naglowek_strony=parametry_modul.CzyTak(naglowek_strony); local czy_pusta_nazwa_strony_linku=parametry_modul.CzyTak(nazwa_strony_linku); if(not czy_pusta_nazwa_strony_linku)then local linki_modul=require("Module:Linki"); nazwa_strony_linku,_=linki_modul["PrzetłumaczZnakZastępczyNaStronę"]("","",kod_jezyka_koncowy,kod_projektu_koncowy,czy_naglowek_strony); end; ---- local klasa=wiki_modul.KodyKlasStronyNaDanejWiki{["klucz projektu"]=nil,["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["strona"]=nazwa_strony_linku,["nagłówek"]=czy_naglowek_strony,["url"]=czy_url,["parametry"]=czy_parametry_strony,["aktywny"]=aktywny,}; return klasa; end; p["LinkOgólne"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); local miano_przestrzeni_nazw=args["miano przestrzeni nazw"] or args["przestrzeń"] or args["m"]; local czy_dyskusja=parametry_modul.CzyTak(args["dyskusja"] or args["d"]); local klucz_projektu_do_projektu_linku=args["klucz projektu"] or args["k"]; local kod_jezyka_do_projektu_linku=args["kod języka"] or args["kj"]; local kod_projektu_do_projektu_linku=args["kod projektu"] or args["kp"]; local bez_znacznikow=parametry_modul.CzyTak(args["bez znaczników"]); local wyswietl_miano_przestrzeni_nazw=args["wyświetl miano przestrzeni nazw"] or args["wyświetl"] or args["w"]; local nazwa_strony_linku=args[1] or "_"; local czy_nazwa=parametry_modul.CzyTak(args[2]); local czy_analiza=parametry_modul.CzyTak(args["analiza"]) or parametry_modul.CzyTak(args["a"]); local z_kodowaniem=parametry_modul.CzyTak(args["uri"]) or parametry_modul.CzyTak(args["u"]); local nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna; local czy_niepusta_nazwa_przestrzeni_nazw; local nazwy_modul=require("Module:Nazwy"); local czy_aktualna_wiki; if(not czy_analiza)then local tabela_nazw={}; miano_przestrzeni_nazw=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or ""; nowa_nazwa_strony_linku,hash,czy_kreska_dolna,prze_nie_main,czy_strona_lokalna=p.RozwinKreskaPoziomowa(miano_przestrzeni_nazw,nazwa_strony_linku,nil,nil,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,czy_analiza,tabela_nazw,function(nowa_nazwa_strony_linku,czy_dyskusja,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,prze_nie_main) if(czy_dyskusja)then local tabela_nazw_temp={};tabela_nazw_temp.czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; nowa_nazwa_strony_linku=nazwy_modul["NAZWASTRONYDYSKUSJI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["bez zmiany adresu"]="tak",},tabela_nazw_temp); end; return nowa_nazwa_strony_linku; end); czy_aktualna_wiki=tabela_nazw.czy_aktualna_wiki; else prze_nie_main=((miano_przestrzeni_nazw)and((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw~="(main)"))) and miano_przestrzeni_nazw or nil; nowa_nazwa_strony_linku=prze_nie_main and((miano_przestrzeni_nazw..":")..nazwa_strony_linku) or nazwa_strony_linku; end; local tabela_nazw={};tabela_nazw.czy_aktualna_wiki=czy_aktualna_wiki; local czy_biezaca; local czy_nazwa_strony_pusta; local wiki_modul=require("Module:Wiki"); if((czy_dyskusja)or(czy_analiza))then czy_nazwa_strony_pusta=mw.ustring.match(nazwa_strony_linku,"^[%s_:]*$"); if((not czy_nazwa_strony_pusta)or((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~="")))then if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local nazwy_modul=require("Module:Nazwy"); if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"](nowa_nazwa_strony_linku,tabela_nazw); else miano_przestrzeni_nazw=nazwy_modul[((czy_dyskusja)and(czy_analiza)) and "PRZESTRZEŃDYSKUSJI" or "NAZWAPRZESTRZENI"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); end; czy_niepusta_nazwa_przestrzeni_nazw=parametry_modul.CzyTak(miano_przestrzeni_nazw); end; elseif(hash or czy_kreska_dolna)then czy_niepusta_nazwa_przestrzeni_nazw=true; elseif(not prze_nie_main)then miano_przestrzeni_nazw=""; czy_niepusta_nazwa_przestrzeni_nazw=false; else miano_przestrzeni_nazw=prze_nie_main; czy_niepusta_nazwa_przestrzeni_nazw=true; end; local techniczne_modul=require("Module:Techniczne"); local czy_wyswietl_miano_przestrzeni_nazw=parametry_modul.CzyTak(wyswietl_miano_przestrzeni_nazw); local function NazwaLinkuDoStrony() local function CzyPrzestrzen(miano_przestrzeni_nazw) local czy_biezaca; if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; local miano_przestrzeni_nazw; if(czy_biezaca)then miano_przestrzeni_nazw=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else miano_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; end; return miano_przestrzeni_nazw; end; local function Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw) if(czy_wyswietl_miano_przestrzeni_nazw)then return nazwa; else nazwa=nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); if(tabela_nazw.m)then nazwa=mw.getContentLanguage():lcfirst(nazwa); end; return nazwa; end; end; local function Nazwa(nazwa) local ile;local ile2=0; if((czy_analiza) and (not bez_przetwarzania))then nazwa=techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nazwa_przestrzeni..":".."%s"; end; ile2=ile+1; end); else nazwa,ile=mw.ustring.gsub(nazwa,"^[%s_:]*(.+)[%s_:]*:[%s_]*$",function(nazwaprzestrzeni) local nazwa_przestrzeni=CzyPrzestrzen(nazwaprzestrzeni) if(nazwa_przestrzeni)then return nowa_nazwa_strony_linku; end; ile2=ile2+1; end); end; if(ile-ile2==0)then return Nazwa2(nazwa,czy_wyswietl_miano_przestrzeni_nazw); else return nazwa; end; end; local function NazwaFormat(wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta) if((not czy_analiza)or(bez_przetwarzania))then return nil;end; if(czy_wyswietl_miano_przestrzeni_nazw)then if(czy_nazwa_strony_pusta)then if(not miano_przestrzeni_nazw)then return "%s:%s"; else return miano_przestrzeni_nazw..((miano_przestrzeni_nazw~="") and ":" or "").."%s"; end; end; else return "%s"; end; end; if(czy_niepusta_nazwa_przestrzeni_nazw)then if(czy_wyswietl_miano_przestrzeni_nazw)then if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then nazwa_strony_linku=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa_strony_linku) or nazwa_strony_linku; if((czy_nazwa_strony_pusta)and(czy_analiza)and(not bez_przetwarzania))then nazwa_strony_linku="%s";end; ---- local aliases; local alias=args["alias miana przestrzeni nazw"] or args["alias"] or args["i"]; local czy_alias=parametry_modul.CzyTak(alias); if(czy_alias)then if((not czy_dyskusja)and(not czy_analiza))then local wiki_modul=require("Module:Wiki"); if(tabela_nazw.czy_aktualna_wiki==nil)then czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,}; else czy_biezaca=tabela_nazw.czy_aktualna_wiki; end; end; if(czy_biezaca)then local uchwyt=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak"} if(uchwyt)then aliases=uchwyt.aliases; --miano_przestrzeni_nazw=uchwyt.name; end; else local uchwyt=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,uchwyt="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(uchwyt)then if(parametry_modul.TypeTable(uchwyt))then aliases=uchwyt.aliasy; --miano_przestrzeni_nazw=uchwyt[1]; else --miano_przestrzeni_nazw=uchwyt; aliases={}; end; end; end; end; ---- if((czy_alias)and(parametry_modul.CzyTak(aliases)))then if(parametry_modul["CzySąElementyNumerowaneTablicy"](aliases))then alias=mw.getContentLanguage():uc(alias); for _,value in pairs(aliases)do if((mw.getContentLanguage():uc(value))==alias)then return alias..":"..nazwa_strony_linku; end; end; end; end; if(not miano_przestrzeni_nazw)then return nil;end; local miano_przestrzeni_nazw_zmienna_tymczasowa; if(czy_biezaca)then miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.Np{nazwa=miano_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"](nowa_nazwa_strony_linku,tabela_nazw) or nazwa_strony_linku; else miano_przestrzeni_nazw_zmienna_tymczasowa=nazwy_modul.NpDane{nazwa=miano_przestrzeni_nazw,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,["po polsku"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} or miano_przestrzeni_nazw; nazwa_strony_linku=((miano_przestrzeni_nazw_zmienna_tymczasowa)and(not czy_nazwa_strony_pusta)and(not prze_nie_main)) and nazwy_modul["NAZWASTRONY"]{nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,tabela_nazw} or nazwa_strony_linku; end; if(not miano_przestrzeni_nazw_zmienna_tymczasowa)then return nil;end; return ((miano_przestrzeni_nazw_zmienna_tymczasowa~="") and (miano_przestrzeni_nazw_zmienna_tymczasowa..":") or "")..((((czy_analiza)and(not bez_przetwarzania))and(nazwa_strony_linku=="")) and "%s" or nazwa_strony_linku); else local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](nazwa) or nazwa; nazwa=Nazwa(nazwa); return nazwa; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwa=nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if((czy_nazwa_strony_pusta)and((czy_analiza)and(not bez_przetwarzania)))then return "%s"; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and ("#"..hash) or nazwy_modul["NAZWASTRONY"]({nazwa=nowa_nazwa_strony_linku,["klucz projektu"]=klucz_projektu_do_projektu_linku,["kod języka"]=kod_jezyka_do_projektu_linku,["kod projektu"]=kod_projektu_do_projektu_linku,},tabela_nazw); nazwa=Nazwa(nazwa); return nazwa; end; end; end; else if(not czy_nazwa)then if((not czy_kreska_dolna)and(not hash))then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; local nazwa=nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; else if(czy_nazwa_strony_pusta)then local wynik_nazwa=NazwaFormat(czy_wyswietl_miano_przestrzeni_nazw,miano_przestrzeni_nazw,czy_nazwa_strony_pusta); if(wynik_nazwa)then return wynik_nazwa;end; end; local nazwy_modul=require("Module:Nazwy"); local nazwa=hash and("#"..hash) or nowa_nazwa_strony_linku; nazwa=Nazwa(nazwa); return nazwa; end; end; end; end; local bez_przetwarzania=parametry_modul.CzyTak(args["bez przetwarzania"]); local bez_przetwarzania_kodow=parametry_modul.CzyTak(args["bez przetwarzania kodów"]); local bez_przetwarzania=bez_przetwarzania or ((not czy_analiza)and(((hash)or(czy_kreska_dolna)) and "tak" or (((miano_przestrzeni_nazw)and(miano_przestrzeni_nazw~=""))or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*$")or(mw.ustring.match(nazwa_strony_linku,"^[%s_]*[^:#]-[^%s_#:][%s_]*#(.*)$"))))) or nil); local nazwa=czy_nazwa and (args[2] and (((czy_analiza) and (not bez_przetwarzania)) and techniczne_modul["TekstBezOdwołańDoPodstawieńElementówWFunkcjiFormat"](args[2]) or args[2]) or nil) or NazwaLinkuDoStrony(); local po=args["po"] or args["p"]; local za=args["za"] or args["z"]; if(not bez_przetwarzania)then return p.Link(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash,nazwa,za,po,false,nil,nil,nil,true,wyswietl_miano_przestrzeni_nazw,czy_dyskusja,bez_przetwarzania_kodow,bez_znacznikow,z_kodowaniem); else local link=p.TworzLinkBezPrzetwarzania(klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,(not czy_strona_lokalna) and nowa_nazwa_strony_linku or (hash and "" or nowa_nazwa_strony_linku),hash,nazwa,za,po,z_kodowaniem); if(not bez_znacznikow)then return p.LinkWikidane(link,klucz_projektu_do_projektu_linku,kod_jezyka_do_projektu_linku,kod_projektu_do_projektu_linku,nowa_nazwa_strony_linku,hash or ((not czy_kreska_dolna) and mw.ustring.match(nazwa_strony_linku,"#") or nil),nil,nil); else return link; end; end; end; function p.ZamianaKategoriiNaLinki(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local techniczne_modul=require("Module:Techniczne"); local nazwy_np_modul=wm.loadData("Module:Nazwy/Np"); local kategoria_polska=nazwy_np_modul.Category; local wzor_kategorii_polskiej=techniczne_modul["WzórDanejPrzestrzeniNazw"](kategoria_polska) tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*|%s*([^%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1|%2]]"); tekst=mw.ustring.gsub(tekst,"%[%[%s*"..wzor_kategorii_polskiej.."%s*:%s*([^|%[%]]+)%s*%]%]","[[:"..kategoria_polska..":%1]]"); return tekst; end; return p; 8qsj8lqg0bgr7lw1fd7v9vftvs2u0ob Szablon:Strona główna/styles.css 10 56818 538701 533560 2026-03-31T21:36:02Z Persino 2851 538701 sanitized-css text/css /* -------------------------------------------------------------------------------------------------------------------------------------------------------- */ /* Dokument został stworzony w oparciu o pracę użytkownika: [[User:Persino]] i [[User:Nux]] (częśc pracy tego użytkownika została przeniesiona ze strony: "https://pl.wikibooks.org/w/index.php?title=Szablon:Menu_listy_pozycji_kategorii/styles.css&oldid=446499" na stronę "Szablon:Strona_główna/styles.css") */ /* -------------------------------------------------------------------------------------------------------------------------------------------------------- */ .mainpage{ text-align:center; width:100%; background-color:white; background-image: none; box-sizing:border-box; background-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/0/05/Wikibooksfirehazard2.svg/200px-Wikibooksfirehazard2.svg.png); } .maintext{ text-align:justify; width:73.25rem; font-size:0.83rem; line-height:1.25em; background-color:white; display:inline-block; padding:0.25rem; border:1px solid #ccc; border-radius:0.4375rem; box-sizing:border-box; text-align-last:unset; } .maintext h2{ font-size:1em !important; } /* main */ @media screen { .strona_start.niekolumnowy.mobilne > .strona .maintext { width: 100% !important; max-width: 73.25rem; box-sizing:border-box; } .strona_start.niekolumnowy.mobilne > .strona, .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width: auto !important; overflow-x: visible !important; overflow-y: visible !important; } } /* mobile */ @media all and (max-width:745px), all and (max-device-width:745px), all and (max-device-height:745px) { .strona_start.niekolumnowy.mobilne > .strona .maintext > div > div.pudełko_projektu{ margin-right:auto !important; margin-left:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .maintext{ text-align:left; } .strona_start.niekolumnowy.mobilne > .strona .main-siostrzane > div:first-child{ padding-left:0; margin-bottom:0.3125rem; } .strona_start.niekolumnowy.mobilne > .strona .mainpage { background-image: none; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii{ flex-wrap:wrap; gap:4px; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu{ margin-left:0 !important; margin-right:0 !important; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-treść, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-wprowadzenie, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-dodatkowe{ padding:0 !important; overflow:visible !important; } .strona_start.niekolumnowy.mobilne > .strona .main-dodatkowe-opis{ text-align:left !important; } } @media all and (min-width:560px) and (max-width:745px), all and (min-width:560px) and (max-device-height:745px){ .strona_start.niekolumnowy.mobilne > .strona .pudełko_projektu .br-pudełka-projektu{ display:none; } .strona_start.niekolumnowy.mobilne > .strona .pudełko_projektu .zawartość > center{ white-space:normal !important; } } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu{ width:calc( (100% - 16px)/5); flex-shrink:0; margin-left:2px; margin-right:2px; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu:nth-of-type(1){ margin-left:0; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu:nth-of-type(5){ margin-right:0; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu th, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu td a{ white-space:nowrap; text-overflow:ellipsis; overflow:hidden; } .strona_start.niekolumnowy.mobilne > .strona > .ciało_kontener{ overflow:visible !important; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-wprowadzenie, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-dodatkowe{ padding-right:0.125rem; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-treść/*.mw-overflow-y.mw-scrollbar-overflow-y*/{ padding-right:0.25rem; } .strona-główna-polecane_książki.mw-scrollbar-overflow-y, .strona-główna-pliki_pdf.mw-scrollbar-overflow-y, .strona-główna-wikibooks-dla-szkół.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona-główna-polecane_książki.mw-scrollbar-overflow-x, .strona-główna-pliki_pdf.mw-scrollbar-overflow-x, .strona-główna-wikibooks-dla-szkół.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .main-siostrzane-lista figure[typeof~="mw:File"]{ display:unset; } .main-siostrzane > :nth-child(1){ text-align:left; margin-bottom:0.75rem; padding-left:4.375rem; height:auto; width:100%; box-sizing:border-box; } .main-siostrzane > :nth-child(2){ word-wrap:break-word; hyphens:auto; height:auto; width:100%; box-sizing:border-box; } .main-siostrzane > :nth-child(2).mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.25rem; } .main-siostrzane > :nth-child(2) .elastyczny{ overflow:visible !important; } .main-siostrzane > :nth-child(2){ overflow:auto; } .main-siostrzane > :nth-child(3){ margin:0px; border:solid 1px #ffad80; background:#fff7cb; padding:0.5em; font-size: 95%; text-align: center; width:100%; height:100%; box-sizing:border-box; } .main-siostrzane > div > .main-siostrzane-lista > div > div{ width:100%; height:100%; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(1){ text-align:center; height:auto; padding-bottom:0.1875rem; padding-top:0.1875rem; box-sizing:border-box; flex: 1 1 auto; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2){ text-align:center; background-color:#CAD2ff; height:100%; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2) > div > div:nth-child(1){ height:100%; flex: 1 1 auto; white-space:nowrap; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2) > div > div:nth-child(2){ height:100%; padding:0.3125rem 0.125rem; flex: 1 1 auto; white-space:nowrap; } /*{{Kategorie | Strona główna/Style | Szablony - arkusze stylów }}*/ h1jm58gukfzld45kntpnop9548fga7n 538702 538701 2026-03-31T21:41:21Z Persino 2851 538702 sanitized-css text/css /* -------------------------------------------------------------------------------------------------------------------------------------------------------- */ /* Dokument został stworzony w oparciu o pracę użytkownika: [[User:Persino]] i [[User:Nux]] (częśc pracy tego użytkownika została przeniesiona ze strony: "https://pl.wikibooks.org/w/index.php?title=Szablon:Menu_listy_pozycji_kategorii/styles.css&oldid=446499" na stronę "Szablon:Strona_główna/styles.css") */ /* -------------------------------------------------------------------------------------------------------------------------------------------------------- */ .mainpage{ text-align:center; width:100%; background-color:white; background-image: none; box-sizing:border-box; background-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/0/05/Wikibooksfirehazard2.svg/200px-Wikibooksfirehazard2.svg.png); } .maintext{ text-align:justify; width:73.25rem; font-size:0.83rem; line-height:1.25em; background-color:white; display:inline-block; padding:0.25rem; border:1px solid #ccc; border-radius:0.4375rem; box-sizing:border-box; } .maintext h2{ font-size:1em !important; } /* main */ @media screen { .strona_start.niekolumnowy.mobilne > .strona .maintext { width: 100% !important; max-width: 73.25rem; box-sizing:border-box; } .strona_start.niekolumnowy.mobilne > .strona, .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width: auto !important; overflow-x: visible !important; overflow-y: visible !important; } } /* mobile */ @media all and (max-width:745px), all and (max-device-width:745px), all and (max-device-height:745px) { .strona_start.niekolumnowy.mobilne > .strona .maintext > div > div.pudełko_projektu{ margin-right:auto !important; margin-left:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .maintext{ text-align:left; } .strona_start.niekolumnowy.mobilne > .strona .main-siostrzane > div:first-child{ padding-left:0; margin-bottom:0.3125rem; } .strona_start.niekolumnowy.mobilne > .strona .mainpage { background-image: none; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii{ flex-wrap:wrap; gap:4px; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu{ margin-left:0 !important; margin-right:0 !important; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-treść, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-wprowadzenie, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-dodatkowe{ padding:0 !important; overflow:visible !important; } .strona_start.niekolumnowy.mobilne > .strona .main-dodatkowe-opis{ text-align:left !important; } } @media all and (min-width:560px) and (max-width:745px), all and (min-width:560px) and (max-device-height:745px){ .strona_start.niekolumnowy.mobilne > .strona .pudełko_projektu .br-pudełka-projektu{ display:none; } .strona_start.niekolumnowy.mobilne > .strona .pudełko_projektu .zawartość > center{ white-space:normal !important; } } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu{ width:calc( (100% - 16px)/5); flex-shrink:0; margin-left:2px; margin-right:2px; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu:nth-of-type(1){ margin-left:0; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > table.tabela_nawigacyjna.tablemenu:nth-of-type(5){ margin-right:0; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu th, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-kategorii > .tabela_nawigacyjna.tablemenu td a{ white-space:nowrap; text-overflow:ellipsis; overflow:hidden; } .strona_start.niekolumnowy.mobilne > .strona > .ciało_kontener{ overflow:visible !important; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-wprowadzenie, .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-dodatkowe{ padding-right:0.125rem; } .strona_start.niekolumnowy.mobilne > .strona .menu-listy-elastyczny-treść/*.mw-overflow-y.mw-scrollbar-overflow-y*/{ padding-right:0.25rem; } .strona-główna-polecane_książki.mw-scrollbar-overflow-y, .strona-główna-pliki_pdf.mw-scrollbar-overflow-y, .strona-główna-wikibooks-dla-szkół.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona-główna-polecane_książki.mw-scrollbar-overflow-x, .strona-główna-pliki_pdf.mw-scrollbar-overflow-x, .strona-główna-wikibooks-dla-szkół.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .main-siostrzane-lista figure[typeof~="mw:File"]{ display:unset; } .main-siostrzane > :nth-child(1){ text-align:left; margin-bottom:0.75rem; padding-left:4.375rem; height:auto; width:100%; box-sizing:border-box; } .main-siostrzane > :nth-child(2){ word-wrap:break-word; hyphens:auto; height:auto; width:100%; box-sizing:border-box; } .main-siostrzane > :nth-child(2).mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.25rem; } .main-siostrzane > :nth-child(2) .elastyczny{ overflow:visible !important; } .main-siostrzane > :nth-child(2){ overflow:auto; } .main-siostrzane > :nth-child(3){ margin:0px; border:solid 1px #ffad80; background:#fff7cb; padding:0.5em; font-size: 95%; text-align: center; width:100%; height:100%; box-sizing:border-box; } .main-siostrzane > div > .main-siostrzane-lista > div > div{ width:100%; height:100%; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(1){ text-align:center; height:auto; padding-bottom:0.1875rem; padding-top:0.1875rem; box-sizing:border-box; flex: 1 1 auto; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2){ text-align:center; background-color:#CAD2ff; height:100%; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2) > div > div:nth-child(1){ height:100%; flex: 1 1 auto; white-space:nowrap; } .main-siostrzane > div > .main-siostrzane-lista > div > div > :nth-child(2) > div > div:nth-child(2){ height:100%; padding:0.3125rem 0.125rem; flex: 1 1 auto; white-space:nowrap; } /*{{Kategorie | Strona główna/Style | Szablony - arkusze stylów }}*/ t4qehvx9cmho6ulaxfilnhuzqebvsnj Szablon:PreBody/styles.css 10 57291 538725 478212 2026-04-01T00:09:24Z Persino 2851 538725 sanitized-css text/css pre.prebody{ border:none; font-size:unset; padding:unset; overflow-x:unset; word-wrap:unset; background-color:unset; color:unset; line-height:unset; display:inline-block; } /*{{Kategoria|Szablony - arkusze stylów}}*/ czvrqwpe24w6s081qiqg066nqd3f14y 538728 538725 2026-04-01T00:27:14Z Persino 2851 538728 sanitized-css text/css pre.prebody{ border:none; font-size:unset; padding:unset; overflow-x:unset; word-wrap:unset; /*background-color:unset; color:unset;*/ line-height:unset; display:inline-block; } /*{{Kategoria|Szablony - arkusze stylów}}*/ id8h2qc0c4htqsm2x1gotwpc8c9qcsx 538729 538728 2026-04-01T00:28:49Z Persino 2851 538729 sanitized-css text/css pre.prebody{ border:none; font-size:unset; padding:unset; overflow-x:unset; word-wrap:unset; line-height:unset; display:inline-block; } /*{{Kategoria|Szablony - arkusze stylów}}*/ hqloo9l22owlh26enjc66erpvc8pk75 Szablon:PreLine/styles.css 10 57292 538727 478214 2026-04-01T00:11:46Z Persino 2851 538727 sanitized-css text/css pre.preline{ white-space:pre-line; } /*{{Kategoria|Szablony - arkusze stylów}}*/ 1jtl6hth5wtona7xjmom4tydayueu1d Szablon:PreBody2/styles.css 10 57297 538726 478225 2026-04-01T00:11:15Z Persino 2851 538726 sanitized-css text/css pre.prebody2{ font-family:inherit !important; line-height: inherit !important; } /*{{Kategoria|Szablony - arkusze stylów}}*/ qd17gagpf710zff9sr69sybgcvx7wys Szablon:StronaStart/stronastart.css 10 58549 538688 538638 2026-03-31T19:51:48Z Persino 2851 538688 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word !important; word-break:break-word !important; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ gq8foctxrysl578r3j0xjfv6jebtew7 538689 538688 2026-03-31T19:56:36Z Persino 2851 538689 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word !important; word-break:break-word !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code{ word-break:break-all !important; } } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ qvc7oarpmntj6fnnd8lc5cgd48fym7b 538691 538689 2026-03-31T20:25:18Z Persino 2851 538691 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word !important; word-break:break-word !important; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ gq8foctxrysl578r3j0xjfv6jebtew7 538707 538691 2026-03-31T21:54:36Z Persino 2851 538707 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ e9kki6j3antql0umgqh4efdgfmhcbc1 538713 538707 2026-03-31T22:38:53Z Persino 2851 538713 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ abvnmbk64bjavb2xyzzpfm9zx9iji5m 538714 538713 2026-03-31T22:43:58Z Persino 2851 538714 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word; word-break:break-word; hyphens:none; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ ozqu3oc58acy3hioca4519a5uupbb53 538715 538714 2026-03-31T22:46:16Z Persino 2851 538715 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word; word-break:break-word; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ hyphens:none; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ f0xf2397h536rv77roknql6z1pgyp4x 538716 538715 2026-03-31T22:50:27Z Persino 2851 538716 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; word-wrap:break-word; word-break:break-all; hyphens:none; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ fptdf9vrg7fip82g4rr8ollqf9adne8 538718 538716 2026-03-31T23:20:47Z Persino 2851 538718 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; word-wrap:break-word; word-break:break-all; hyphens:none; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; font-size:inherit; line-height:1.7; word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ 5mn6ce1jbcbchvftwzhno2qg1k7ni0j 538719 538718 2026-03-31T23:24:07Z Persino 2851 538719 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; word-wrap:break-word; word-break:break-all; hyphens:none; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; font-size:inherit; line-height:1.55; word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ 5dgih2nkxlrqgxkznl7qoyknm59zrzs 538720 538719 2026-03-31T23:25:22Z Persino 2851 538720 sanitized-css text/css body.skin--responsive .strona_start{ font-size:1rem; line-height:1.4; } body:not(.skin--responsive) .strona_start{ font-size:16px; line-height:1.4; } .strona_prawa .spis{ display:flex; flex-direction:column; width:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; } .strona_prawa .spis > div, .strona_prawa .spis > div > div{ height:auto; max-height:100%; width:auto; display:flex !important; flex-direction:column; box-sizing:border-box; } .strona_prawa .spis .style_strony_bocznego_menu, .strona_prawa .spis .style_strony_TOC{ overflow:auto; } @media all and (max-width:745px){ .strona_prawa .spis > div, .strona_prawa .spis > div > div{ width:100% !important; } } .strona_prawa .mw-sticky-y.spis:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); /**/ transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_prawa .mw-sticky-y.spis:hover{ max-width:43.75rem !important; transform: scale(1,1) translate(0,0); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_prawa .pierwsza_strona .wikitable{ margin-top:0.3125rem; margin-bottom:0.3125rem; } .strona_prawa .pierwsza_strona hr.pierwsza_strona_spis_treści-hr{ height: 1px; background-color: var(--border-color-base,#a2a9b1); border: 0; margin: 0.2em 0; } .strona_start.tło_strona_start, .strona_start .tło_strona_nadrzędna, .strona_start .tło_główna_strona, .strona_start .tło_strona_środkowa, .strona_start .tło_strona, .strona_start .tło_ciało_kontener, .strona_start .tło_ciało_strona{ background-color:white; background-image: none; } .strona_prawa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-left:0.3125rem !important; margin-right:0 !important; } .strona_lewa .nawigacja_boksy > .mw-optimal-x > div{ margin-top:0 !important; margin-bottom:0.3125rem !important; margin-right:0.3125rem !important; margin-left:0 !important; } .strona_prawa .mw-optimal-x:hover, .strona_lewa .mw-optimal-x:hover{ transform: scale(1,1) translate(0,0); max-width:none !important; transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay: 0s; } .strona_prawa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } .strona_lewa .mw-optimal-x:not(:hover){ transform: scale(0.3,0.3) translate(-116.5%,-116.5%); transition: transform 500ms ease-out, linear; transition-property: transform; transition-duration: 500ms; transition-timing-function: ease-out, linear; transition-delay:4s; } html.client-nojs .strona_prawa, html.client-nojs .strona_lewa{ overflow-x:auto !important; overflow-y:hidden !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis{ visibility:visible !important; position:relative !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ width: 100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; height:auto !important; } html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_TOC, html.client-nojs .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu{ overflow:auto; padding-bottom:0.3125rem; } .strona_prawa .mw-sticky-y > .style_strony_TOC > .strona_spisu_treści, .strona_prawa .mw-sticky-y > .style_strony_bocznego_menu > div{ flex:0 0 auto; } html.client-nojs .strona_prawa .nawigacja_boksy, html.client-nojs .strona_lewa .nawigacja_boksy{ margin-top:0.3125rem !important; visibility:visible !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ transform:none; transition:none; } html.client-nojs .strona_prawa .mw-optimal-x, html.client-nojs .strona_lewa .mw-optimal-x{ overflow:auto !important; visibility:visible !important; position:relative !important; z-index:1 !important; direction: rtl; width: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:not(:hover), html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){ width: auto !important; max-width: calc( 100% - 0.3125rem ) !important; height: auto !important; } html.client-nojs .strona_prawa .mw-optimal-x:hover, html.client-nojs .strona_lewa .mw-optimal-x:hover{ z-index:3 !important; width:100% !important; max-width:calc( 100% - 0.3125rem ) !important; } body.skin-minerva .strona_start{ margin-top:0.25rem !important; } .strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover), .strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){ overflow:auto; } .strona_prawa .mw-optimal-x, .strona_lewa .mw-optimal-x{ display:flex; flex-direction:column; } .strona_lewa .mw-optimal-x > div, .strona_prawa .mw-optimal-x > div{ flex:0 0 auto; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{ background-color:blue !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{ background-color:grey !important; color:white !important; } .strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){ background-color:white !important; color:black !important; } /**/ .strona > div > .ciało_kontener > .ciało_strona > :last-child.noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div:not(:only-child) > .ciało_kontener > *:nth-child(2) > .noprint > p:last-child, .strona > div > .ciało_kontener:not(:only-child) > *:nth-child(2) > .noprint > p:last-child{ margin-bottom:0 !important; padding-bottom:0 !important; } .strona > div > .ciało_kontener > :nth-child(2):not(:empty) + .ciało_strona, .strona > div:not(:only-child) > .ciało_kontener > .ciało_strona, .strona > div > .ciało_kontener:not(:only-child) > .ciało_strona{ padding-bottom:0 !important; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link){ margin-top:0.625rem; } .strona > div > .ciało_kontener > *:nth-child(1) > :not(style):not(link) + :not(style):not(link){ margin-top:initial; } .strona > div > .ciało_kontener > *:nth-child(2) > :not(.nawigacja):not(.nawigacja-dół):last-child{ margin-bottom:0.625rem; } .strona > *:not(:first-child), .strona > div > *:not(:first-child){ margin-left:0.5rem; margin-right:0.5rem; } .strona > *:nth-child(2), .strona > div > *:nth-child(2){ margin-top:0.25rem; margin-bottom:0.125rem; } .strona > *:not(:nth-child(2)):not(:first-child), .strona > div > *:not(:nth-child(2)):not(:first-child){ margin-top:0.125rem; margin-bottom:0.125rem; } .strona > *:last-child:not(:first-child), .strona > div > *:last-child:not(:first-child){ margin-top:0.125rem; margin-bottom:0.5rem; } /**/ .strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{ text-align:left; } .strona > div > .ciało_kontener > .ciało_strona > p:first-child{ margin-top:0; } .strona > div > .ciało_kontener > .ciało_strona > p:not(.br-clear):last-child{ margin-bottom:0; } .strona > div > .ciało_kontener > .ciało_strona > div.nawigacja.nawigacja-dół{ margin-top:0.5rem !important; } .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p, .strona > div > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).float-left-or-right + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-left + p, .strona > div > .ciało_kontener > .ciało_strona > figure.mw-halign-right + p{ margin-top:0; } @media print{ .noprint{ display:none; } .print{ display:block; } } .gallerytext, .plainlinks{ text-align:left; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p + ol{ margin-top:-0.2rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona p, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona p{ font-size: inherit; line-height: 1.25em; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona > div > .ciało_kontener.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona figure.mw-halign-left[typeof="mw:File"] + ol, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ul, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .szablon_plik + ol{ list-style-position:inside; margin-left:0; margin-inline-start:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight{ display:flex; flex-direction:column; max-width:100%; overflow-x:auto; overflow-y:hidden; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre{ display:block; width:auto !important; min-width:100%; text-align:left; word-wrap:break-word; word-break:break-all; hyphens:none; box-sizing:border-box; white-space:pre-wrap; flex-shrink:0; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; font-size:inherit; line-height:1.56; word-wrap:break-word; word-break:break-word; } @media all{ :not(style):not(link) ~ .strona_start{ margin-top:0.3125rem !important; } .strona_start p{ margin: 0.4em 0 0.5em 0; } } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-top:0 !important; margin-bottom:0.3125rem !important; } .strona_start.niekolumnowy > div.mójNagłówek > div:last-child, .strona_start.kolumnowy > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne{ max-width:100vw !important; min-width:auto !important; width:100% !important; } .strona_start.kolumnowy.mobilne div > .ciało_kontener > *{ min-width:100% !important; max-width:100% !important; width:100% !important; } .strona_start.kolumnowy.mobilne .strona{ overflow:hidden !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek > div:last-child{ margin-bottom:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div.mójNagłówek{ margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2), .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table{ max-width:none !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tr > td:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > th:last-child, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > div:nth-child(2) > table > tbody > tr > td:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona{ flex-wrap: wrap; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div{ position:static !important; margin-left:0 !important; margin-right:0 !important; margin-top:0 !important; margin-bottom:0 !important; transition:none !important; transform:none !important; visibility:visible !important; min-width:auto !important; max-width:100vw !important; width:100% !important; box-sizing:border-box !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x{ transition:none !important; transform:none !important; position:static !important; margin-left:0 !important; float:none !important; clear:none !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div{ width:100% !important; box-sizing:border-box; margin: 0 !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy > .mw-optimal-x > div > div:last-child{ font-size:0.80rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_lewa{ order:1 !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa{ order:2 !important; display:flex; flex-direction:column; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .kontener_spis_treści a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis a.zaznaczone, .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .strona_spisu_treści > .toc_wykaz a.zaznaczone{ color: #3366cc !important; font-weight: normal !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa{ order:3 !important; width:100%; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > div.nawigacja_boksy{ order:1; height:auto !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y{ order:2; height:100% !important; max-height:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div{ width:100% !important; box-sizing:border-box !important; margin-bottom:0.25rem !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > div > .pierwsza_strona > div tr:last-child > td > div.toc_ogólnie_spis{ max-height:100% !important; overflow:visible !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y .toc_spis{ overflow:visible !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona{ min-width:auto !important; max-width:100vw !important; width:100% !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_środkowa > .menu{ display:none !important; } .strona_start.kolumnowy.mobilne > .strona_nadrzędna > .główna_strona > .strona_prawa > .mw-sticky-y > .style_strony_TOC:only-child > .kontener_spis_treści{ margin-top:0 !important; margin-bottom:0 !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading{ display:block; text-align:left; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > *{ display:inline; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ display:inline-flex; margin-left:1em; font-size:small; margin-right:0; vertical-align:middle; } body.skin--responsive.skin-minerva .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection, body.skin--responsive.skin-minerva .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .mw-editsection{ margin-left:0.3em; } .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona .mw-heading > .numeracja{ margin-top: 0; margin-bottom: auto; } } @media all{ .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > .rozdział, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > .rozdział{ margin-top:0 !important; } .strona_start.niekolumnowy > .mójNagłówek, .strona_start.niekolumnowy > div:first-child:not(.mójNagłówek) > *, .strona_start.kolumnowy > .strona_nadrzędna > .mójNagłówek, .strona_start.kolumnowy > .strona_nadrzędna > div:first-child:not(.mójNagłówek) > *{ margin-top:0 !important; margin-bottom:0.25rem !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ figure[typeof~="mw:File"].mw-halign-left{ float:left !important; margin:4px 4px 4px 0 !important; } figure[typeof~="mw:File"].mw-halign-right{ float:right !important; margin:4px 0 4px 4px !important; } figure[typeof~="mw:File"].mw-halign-center{ margin:0 auto !important; } figure[typeof~="mw:File"]{ display:block; max-width:100%; overflow:auto; } span[typeof~="mw:File"].mw-default-size{ display:inline-block; overflow:auto; max-width:100%; } div.tright{ float:right; margin:0 0 1em 1em; } div.tleft{ float:left; margin:0 1em 1em 0; } } @media all and (max-width:745px), all and (max-device-width: 745px){ div.tright, div.tleft{ margin: 0 auto !important; float:none !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy.mobilne > .strona{ max-width:100vw !important; min-width:auto !important; width:100% !important; overflow:auto !important; } .strona_start.niekolumnowy.mobilne > .strona .ciało_kontener > *{ min-width:auto !important; max-width:100% !important; width:100% !important; box-sizing:border-box; } } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ kvn1870rbc3sn7eek5exl3vwryb3qdi Moduł:Specjalne 828 58949 538738 530940 2026-04-01T11:28:23Z Persino 2851 538738 Scribunto text/plain local p={}; local function GranicznieSzereg(wzor,czy_granicznie) return (czy_granicznie and "^" or "")..wzor..(czy_granicznie and "$" or ""); end; function p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(szablon) local specjalne_modul=mw.loadData("Module:Specjalne/dane"); local tab_specjalne_znaki=specjalne_modul.szablony_anulowania_znaczeniowego_tagowego_mediawiki; szablon=mw.ustring.gsub(szablon,"[<>]",tab_specjalne_znaki); return szablon; end; p["UsuńŚciśleOkreśloneKategorie"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local kategoria=PobierzParametr("kategoria") or PobierzParametr(2) or "([^%[%]|]*)"; local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(3); tekst=mw.ustring.gsub(tekst,GranicznieSzereg("%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*"..kategoria.."%s*%]%]",czy_granicznie),""); tekst=mw.ustring.gsub(tekst,GranicznieSzereg("%[%[%s*[Kk][Aa][Tt][Ee][Gg][Oo][Rr][Ii][Aa]%s*:%s*"..kategoria.."%s*%]%]",czy_granicznie),""); tekst=mw.ustring.gsub(tekst,GranicznieSzereg("%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:%s*"..kategoria.."%s*|[^%[%]]*%]%]",czy_granicznie),""); tekst=mw.ustring.gsub(tekst,GranicznieSzereg("%[%[%s*[Kk][Aa][Tt][Ee][Gg][Oo][Rr][Ii][Aa]%s*:%s*"..kategoria.."|[^%[%]]*%s*%]%]",czy_granicznie),""); return tekst; end; p["UsuńKategorie"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(2); local category=require("Module:Nazwy").Np{nazwa="Category"}; local wzorcategory=require("Module:Techniczne")["WzórDanejPrzestrzeniNazw"](category); argument_pierwszy=mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("%[%[%s*"..wzorcategory.."%s*:[^%[%]]*%]%]",czy_granicznie),""); argument_pierwszy=mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("%[%[%s*[CC][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:[^%[%]]*%]%]",czy_granicznie),""); return argument_pierwszy; end; p["UsuńZnaczniki"]=function(frame,jakie,funkcja1,funkcja2) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_ze_znacznikiem=PobierzParametr("tekst") or PobierzParametr(1); argument_ze_znacznikiem=funkcja1 and funkcja1(argument_ze_znacznikiem) or argument_ze_znacznikiem; if(not jakie)then argument_ze_znacznikiem=mw.ustring.gsub(argument_ze_znacznikiem,"(</?%s*[^<>]+/?>)",""); else argument_ze_znacznikiem=mw.ustring.gsub(argument_ze_znacznikiem,"(</?%s*"..jakie.."%s+[^<>]*/?>)",""); argument_ze_znacznikiem=mw.ustring.gsub(argument_ze_znacznikiem,"(</?%s*"..jakie.."%s*/?>)",""); end; argument_ze_znacznikiem=funkcja2 and funkcja2(argument_ze_znacznikiem) or argument_ze_znacznikiem; return argument_ze_znacznikiem; end; p["UsuńKomentarze"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_ze_znacznikiem=PobierzParametr("tekst") or PobierzParametr(1); argument_ze_znacznikiem=mw.ustring.gsub(argument_ze_znacznikiem,"<!%-%-.-%-%->",""); return argument_ze_znacznikiem; end; p["UsuńSzablonyStylów"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_ze_znacznikiem=PobierzParametr("tekst") or PobierzParametr(1); local html_dane_modul=mw.loadData("Module:Html/dane"); local szablonowe_modul=require("Module:Szablonowe"); argument_ze_znacznikiem=mw.ustring.gsub(argument_ze_znacznikiem,szablonowe_modul.NormaWzoruKodowaniaTekstu("templatestyles","%w+"),""); return argument_ze_znacznikiem; end; p["UsuńWywołaniaPlików"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(2); local wartosc=mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("%[%[[%s_]*[Pp][Ll][Ii][Kk][%s_]*:[^%[%]]*%]%]",czy_granicznie),""); wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("%[%[[%s_]*[Ff][Ii][Ll][Ee][%s_]*:[^%[%]]*%]%]",czy_granicznie),""); wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("%[%[[%s_]*[Ii][Mm][Aa][Gg][Ee][%s_]*:[^%[%]]*%]%]",czy_granicznie),""); wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("%[%[[%s_]*[Gg][Rr][Aa][Ff][Ii][Kk][Aa][%s_]*:[^%[%]]*%]%]",czy_granicznie),""); return wartosc; end; p["CzyPlik"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); return mw.ustring.match(argument_pierwszy,"^%[%[[%s_]*([Pp][Ll][Ii][Kk])[%s_]*:[^%[%]]*%]%]$") or mw.ustring.match(argument_pierwszy,"^%[%[[%s_]*([Ff][Ii][Ll][Ee])[%s_]*:[^%[%]]*%]%]$") or mw.ustring.match(argument_pierwszy,"^%[%[[%s_]*([Ii][Mm][Aa][Gg][Ee])[%s_]*:[^%[%]]*%]%]$") or mw.ustring.match(argument_pierwszy,"^%[%[[%s_]*([Gg][Rr][Aa][Ff][Ii][Kk][Aa])[%s_]*:[^%[%]]*%]%]$"); end; p["UsuńInterwiki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(2); local pudelko_modul=require("Module:Pudełko"); ---- local function usun_interwiki(interwiki) local wartosc=mw.ustring.match(interwiki,"%[%[[%s_]*([^:]*[^:%s_])[%s_]*:[^%[%]]*%]%]"); if(wartosc)then wartosc=mw.getContentLanguage():lc(wartosc); local czy_kod_jezyka_istnieje=mw.language.isKnownLanguageTag(wartosc); if(czy_kod_jezyka_istnieje)then if(wartosc==pudelko_modul["Kod języka tego projektu"](frame))then return interwiki; else return ""; end; end; end; return interwiki; end; --- return mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("(%[%[[^%[%]]*%]%])",czy_granicznie),function(s)return usun_interwiki(s);end); end; p["CzyInterwiki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local pudelko_modul=require("Module:Pudełko"); ---- local function czy_interwiki(interwiki) local wartosc=mw.ustring.match(interwiki,"^%[%[[%s_]*([^:]*[^:%s_])[%s_]*:[^%[%]]*%]%]$"); if(wartosc)then wartosc=mw.getContentLanguage():lc(wartosc); local czy_kod_jezyka_istnieje=mw.language.isKnownLanguageTag(wartosc); if(czy_kod_jezyka_istnieje)then if(wartosc==pudelko_modul["Kod języka tego projektu"](frame))then return nil; else return "tak"; end; end; end; return nil; end; ---- return czy_interwiki(argument_pierwszy); end; p["CzyAdresLinkuWewnętrznego"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local dwukropek=PobierzParametr("dwukropek") or PobierzParametr(1); local adres=PobierzParametr("adres") or PobierzParametr("tekst") or PobierzParametr(2); local pudelko_modul=require("Module:Pudełko"); if((dwukropek)and(dwukropek~=""))then return "tak"; else if(not dwukropek)then local czy_dwukropek=mw.ustring.match(adres,"^[:%s_]*:"); if(czy_dwukropek)then return "tak"; end; end; local kod=mw.ustring.match(adres,"^[:%s_]*([^:%s][^:%s]-)[%s_]*:"); if(kod)then kod=mw.getContentLanguage():lc(kod); if(mw.language.isKnownLanguageTag(kod))then local pudelko_modul=require("Module:Pudełko"); if(kod==pudelko_modul["Kod języka tego projektu"]())then return "tak";else return nil;end; end; local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); if(wiki_interwiki_modul.interwikimap[kod])then return "tak";end; local nazwy_modul=require("Module:Nazwy"); local przestrzen=nazwy_modul["NAZWAPRZESTRZENI"](adres); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((przestrzen==nazwy_np_modul.File)or(przestrzen==nazwy_np_modul.Category))then return nil;end; end; return "tak"; end; return nil; end; p["CzyLinkWewnętrzny"]=function(szablon) local dwukropek,adres=mw.ustring.match(szablon,"^%[%[%s*(:?)%s*([^|]*)"); return ((p["CzyAdresLinkuWewnętrznego"]{[1]=dwukropek,[2]=adres,})and true or false); end; p["ZamieńLinkiWewnętrzneNaTekst"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(2); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); local nazwy_modul=require("Module:Nazwy"); local pudelko_modul=require("Module:Pudełko"); local html_modul=require("Module:Html"); local function LinkiZamienianieNaZawartoscLubNazwe(link,dwukropek,zawartosc,nazwa) local prefix=mw.ustring.match(zawartosc,"^[%s_]*([^:]*[^:%s_])[%s_]*:"); if(prefix)then local czy_kod_jezyka_istnieje=mw.language.isKnownLanguageTag(prefix); if(czy_kod_jezyka_istnieje)then if(#dwukropek>0)then return nazwa or html_modul.DecodeHtml(zawartosc,true); elseif(prefix==pudelko_modul["Kod języka tego projektu"](frame))then return nazwa or html_modul.DecodeHtml(zawartosc,true); else return link; end; else local nazwa_przestrzeni=nazwy_modul.Np{nazwa=prefix,istnieje="tak",["wynik błędu nietekstowy"]="tak"}; if(not nazwa_przestrzeni)then return nazwa or zawartosc;end; if((nazwa_przestrzeni==nazwy_np_modul.Category)or(nazwa_przestrzeni==nazwy_np_modul.File))then if(#dwukropek>0)then return nazwa or html_modul.DecodeHtml(zawartosc,true); else return link; end; else return nazwa or html_modul.DecodeHtml(zawartosc,true); end; end; else return nazwa or html_modul.DecodeHtml(zawartosc,true); end; end; ----- local wartosc=mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("(%[%[(:?)/([^/{}|%[%]][^{}|%[%]]-)/+%]%])",czy_granicznie),LinkiZamienianieNaZawartoscLubNazwe); wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("(%[%[(:?)/([^/{}|%[%]][^{}|%[%]]-)/+|(..-)%]%])",czy_granicznie),LinkiZamienianieNaZawartoscLubNazwe); ----- wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("(%[%[(:?)([^{}|%[%]]+)%]%])",czy_granicznie),LinkiZamienianieNaZawartoscLubNazwe); wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("(%[%[(:?)([^{}|%[%]]+)|(..-)%]%])",czy_granicznie),LinkiZamienianieNaZawartoscLubNazwe); ---- return wartosc; end; p["ZamieńLinkiZewnętrzneNaTekst"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local czy_granicznie=PobierzParametr("granicznie") or PobierzParametr(2); local function SprawdzanieCzyLinkPozaProjektowyPoprawny(link) local strony_modul=require("Module:Strony"); local czy_link=strony_modul.SprawdzanieURL(link); if(czy_link)then return true; end; end; local wartosc=mw.ustring.gsub(argument_pierwszy,GranicznieSzereg("%[%s*([^%[%]%s]+)%s+([^%[%]]*)%]",czy_granicznie),function(a,b) local wynik=SprawdzanieCzyLinkPozaProjektowyPoprawny(a); if(wynik)then return b;end; end); ------ wartosc=mw.ustring.gsub(wartosc,GranicznieSzereg("%[%s*([^%[%]%s]-)%s*%]",czy_granicznie),function(a) local wynik=SprawdzanieCzyLinkPozaProjektowyPoprawny(a); if(wynik)then return a;end; end); return wartosc; end; p["UsuńZnakiSpecjalne"] = function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); local wartosc=argument_pierwszy; repeat local ile; wartosc,ile=mw.ustring.gsub(wartosc,"'''([^'].-)'''","%1"); until (ile==0); repeat local ile; wartosc,ile=mw.ustring.gsub(wartosc,"''([^'].-)''","%1"); until (ile==0); repeat local ile1;local ile2; wartosc,ile1=mw.ustring.gsub(wartosc,"'''",""); wartosc,ile2=mw.ustring.gsub(wartosc,"''",""); until ((ile1==0)and(ile2==0)); return wartosc; end; p["UsuńZbędneBiałeZnaki"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); argument_pierwszy=mw.ustring.gsub(argument_pierwszy,"^%s*",""); argument_pierwszy=mw.ustring.gsub(argument_pierwszy,"%s*$",""); argument_pierwszy=mw.ustring.gsub(argument_pierwszy,"%s+"," "); return argument_pierwszy; end; p["WydzielLiczbę"] = function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr("tekst") or PobierzParametr(1); --- local wartosc=p["WydzielZwykłyTekst"](argument_pierwszy); ---- local ile; wartosc,ile=mw.ustring.gsub(wartosc,"^([^%d]-)([%+%-]?%s*%d+[%d%s]-)%s*$","%2"); if(ile==0)then return nil;end; wartosc=mw.ustring.gsub(wartosc,"%s+",""); return tonumber(wartosc); end; p["PrzetwórzNagłówek"]=function(adres,czy_naglowek_linku,czy_nie_rozwin_adres) local Znaczniki,SzablonyStylowe,ZnakiSpecjalne; if(not czy_nie_rozwin_adres)then adres,Znaczniki,SzablonyStylowe,ZnakiSpecjalne=p["WydzielZwykłyTekst"]{tekst=adres,["nagłówek"]=true,preprocess=true,}; else adres,Znaczniki,SzablonyStylowe,ZnakiSpecjalne=p["WydzielZwykłyTekst"]{tekst=adres,["nagłówek"]=true,preprocess=false,}; end; local bez_funkcji_naglowka_linku_adres=nil; if(czy_naglowek_linku)then local tab_element={}; local szablonowe_potrzebne_modul=require("Module:Szablonowe/Potrzebne"); adres=szablonowe_potrzebne_modul.KodowanieAtrybutoweZnacznikowe(adres,tab_element); adres=Znaczniki(adres,"li"); adres=Znaczniki(adres,"ol"); adres=Znaczniki(adres,"ul"); bez_funkcji_naglowka_linku_adres=adres; adres=Znaczniki(adres); local szablonowe_modul=require("Module:Szablonowe"); adres=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(adres,nil,tab_element); bez_funkcji_naglowka_linku_adres=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(bez_funkcji_naglowka_linku_adres,nil,tab_element); bez_funkcji_naglowka_linku_adres=mw.ustring.gsub(bez_funkcji_naglowka_linku_adres,"[%[%]]",function(s) return "&#"..tostring(mw.ustring.byte(s))..";";end); adres=SzablonyStylowe(adres); adres=ZnakiSpecjalne(adres); local html_modul=require("Module:Html"); adres=html_modul.DecodeKoduHTMLZnaku(adres); adres=html_modul.EncodeSpecjalneZnakiHtml(adres); local parametry_modul=require("Module:Parametry"); adres=parametry_modul["Odstępy"]{[1]=adres,[2]="tak",[3]="tak",}; end; return adres,bez_funkcji_naglowka_linku_adres; end; p["WydzielZwykłyTekst"]=function(frame,funkcja1,funkcja2) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local tekst=PobierzParametr("tekst") or PobierzParametr(1); local nieklasycznie=PobierzParametr("nieklasycznie") or PobierzParametr(2); nieklasycznie=parametry_modul.CzyTak(nieklasycznie); local preprocess=PobierzParametr("preprocess") or PobierzParametr(3); local preprocess=parametry_modul.CzyTak(preprocess); local kodowanie=PobierzParametr("kodowanie") or PobierzParametr(4); local kodowanie=parametry_modul.CzyTak(kodowanie); local naglowek=PobierzParametr("nagłówek") or PobierzParametr(5); local naglowek=parametry_modul.CzyTak(naglowek); local tablica_analizy_obiektow_strony_dany_modul; if(kodowanie)then tablica_analizy_obiektow_strony_dany_modul={}; elseif(nieklasycznie)then tablica_analizy_obiektow_strony_dany_modul=PobierzParametr("tablica kodowania") or PobierzParametr(5); end; local function DwaNawiasyLinkowe(tekst) tekst=p["UsuńKategorie"]{tekst,nieklasycznie,}; tekst=p["UsuńWywołaniaPlików"]{tekst,nieklasycznie,}; tekst=p["UsuńInterwiki"]{tekst,nieklasycznie,}; tekst=p["ZamieńLinkiWewnętrzneNaTekst"]{tekst,nieklasycznie,}; return tekst; end; local function JedenNawiasLinkowe(tekst) tekst=p["ZamieńLinkiZewnętrzneNaTekst"]{tekst,nieklasycznie,}; return tekst; end; local function Komentarze(tekst) tekst=p["UsuńKomentarze"](tekst); return tekst; end; local function SzablonyStylowe(tekst) tekst=p["UsuńSzablonyStylów"](tekst); return tekst; end; local function ZnakiSpecjalne(tekst) tekst=p["UsuńZnakiSpecjalne"](tekst); return tekst; end; local function Znaczniki(tekst,jakie,__FUNKCJA1,__FUNKCJA2) tekst=p["UsuńZnaczniki"](tekst,jakie,__FUNKCJA1,__FUNKCJA2); return tekst; end; local function PreProcessFrame(tekst) local frame=mw.getCurrentFrame(); frame=frame.getParent and frame:getParent() or frame; tekst=frame:preprocess(tekst); return tekst; end; if(not nieklasycznie)then if(preprocess)then tekst=p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(tekst); tekst=PreProcessFrame(tekst); end; tekst=Komentarze(tekst); tekst=JedenNawiasLinkowe(tekst); tekst=DwaNawiasyLinkowe(tekst); if(not naglowek)then tekst=SzablonyStylowe(tekst); tekst=ZnakiSpecjalne(tekst); tekst=Znaczniki(tekst); end; if(naglowek)then return tekst,Znaczniki,SzablonyStylowe,ZnakiSpecjalne; end; return tekst; end; local szablonowe_modul=require("Module:Szablonowe"); if(kodowanie)then tekst=Komentarze(tekst); tekst=szablonowe_modul:KodowanieSzablonowegoTekstuZObiektamiWikikodu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul); end; tekst=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul, function(szablon,obiekt,kod) if(obiekt=="SZABLON")then local wynik; if(funkcja1)then szablon,wynik=funkcja1(szablon,obiekt,kod); end; if(((not funkcja1) or (szablon))and((not funkcja2) or funkcja2(szablon,obiekt,kod)))then szablon=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(szablon,nil,tablica_analizy_obiektow_strony_dany_modul); szablon=p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(szablon); szablon=PreProcessFrame(szablon); szablon=Komentarze(szablon); szablon=szablonowe_modul:KodowanieSzablonowegoTekstuZObiektamiWikikodu(szablon,nil,tablica_analizy_obiektow_strony_dany_modul, nil,nil, function() local numer_szablonu=szablonowe_modul:NumerSzablonuKodowaniaTekstu(nil,tablica_analizy_obiektow_strony_dany_modul); return numer_szablonu; end); szablon=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(szablon,nil,tablica_analizy_obiektow_strony_dany_modul,function(szablon,obiekt,kod) if(obiekt=="LINKW")then szablon=DwaNawiasyLinkowe(szablon) return szablon; elseif(obiekt=="LINKZ")then szablon=JedenNawiasLinkowe(szablon) return szablon; elseif(obiekt=="ATRYBUTY")then if(naglowek)then return nil,true; end; return szablon; elseif(obiekt=="ZNACZNIK")then if(naglowek)then return nil,true; end; szablon=Znaczniki(szablon); return szablon; elseif((obiekt=="NOWIKI")or(obiekt=="MATH")or(obiekt=="ŹRÓDŁO")or(obiekt=="GALERIA")or(obiekt=="MAPAOBRAZU")or(obiekt=="PUDEŁKOWEJŚCIA")or(obiekt=="QUIZ"))then if(naglowek)then return nil,true; end; szablon=Znaczniki(szablon); return szablon; end; return szablon; end); end; return szablon,wynik; else if(obiekt=="LINKW")then szablon=DwaNawiasyLinkowe(szablon); return szablon; elseif(obiekt=="LINKZ")then szablon=JedenNawiasLinkowe(szablon); return szablon; elseif(obiekt=="ATRYBUTY")then if(naglowek)then return nil,true; end; return szablon; elseif(obiekt=="ZNACZNIK")then if(naglowek)then return nil,true; end; szablon=Znaczniki(szablon); return szablon; elseif((obiekt=="NOWIKI")or(obiekt=="MATH")or(obiekt=="ŹRÓDŁO")or(obiekt=="GALERIA")or(obiekt=="MAPAOBRAZU")or(obiekt=="PUDEŁKOWEJŚCIA")or(obiekt=="QUIZ"))then if(naglowek)then return nil,true; end; szablon=Znaczniki(szablon); return szablon; end; end; return szablon; end); if(not naglowek)then tekst=SzablonyStylowe(tekst); tekst=ZnakiSpecjalne(tekst); end; if(naglowek)then return tekst,Znaczniki,SzablonyStylowe,ZnakiSpecjalne; else return tekst; end; end; p["OdstępyZmiennychNumerowanychSzablonu"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local argument_pierwszy=PobierzParametr(1); local lewy=PobierzParametr("lewy"); local parametry_modul=require("Module:Parametry"); local czy_lewy=parametry_modul.CzyTak(lewy); if(czy_lewy)then return mw.ustring.match(argument_pierwszy,"^%s+") or ""; else return mw.ustring.match(argument_pierwszy,"%s+$") or ""; end; end; return p; 71qd6uc64njchce87m163obqh81qhv7 Wikipedysta:Persino/vector-2022.css 2 58973 538721 538374 2026-03-31T23:55:00Z Persino 2851 538721 css text/css /* Kod CSS skórki vector-2022 na WIKI (ustawienia własne vector) */ body:not(.action-edit):not(.action-submit) #mw-content-text .mw-parser-output, body.action-submit #wikiPreview, .mw-footer-container{ word-wrap: break-word; word-break: break-word; } body:not(.action-edit):not(.action-submit) #mw-content-text .mw-parser-output table, body.action-submit #wikiPreview table, body:not(.action-edit):not(.action-submit) #mw-content-text .mw-parser-output table *, body.action-submit #wikiPreview table *{ word-wrap: normal; word-break: normal; } .mw-content-container, .vector-sticky-header, .vector-page-toolbar-container{ max-width: unset !important; } .mw-header{ padding-top:4px; padding-bottom:4px; } .vector-header-container{ box-sizing:border-box; width: -moz-available !important; width: -webkit-fill-available !important; width: stretch !important; } html.vector-feature-page-tools-pinned-enabled > body.ns-special .vector-page-toolbar-container{ margin-top:-2px; } .vector-pinnable-element{ padding-top:3px; } .vector-dropdown .vector-dropdown-content{ padding-top: 6px; margin-top: 7px; } .vector-header-container{ padding-left:20px; padding-right:20px; max-width:none; border-bottom: 1px solid #eaecf0; margin-bottom:4px; max-width:100%; min-width:auto; box-sizing:border-box; } .vector-pinned-container{ margin-bottom:0; padding-right:2px !important; padding-top:2px; } #vector-page-tools-pinned-container.vector-pinned-container{ margin-bottom:0; padding-right:8px !important; } .mw-logo{ min-width:auto; } @media screen and (max-width: 999px){ .mw-header.vector-header-search-toggled .vector-search-box{ margin-left:0; } .cdx-typeahead-search--show-thumbnail.cdx-typeahead-search--auto-expand-width:not(.cdx-typeahead-search--expanded){ margin-left:0; } } @media screen and (max-width: 390px){ .mw-logo{ display:none; } } @media screen and (max-width: 454px){ .cdx-text-input__input{ min-width:auto; } } @media screen and (min-width: 999px) { .client-js.vector-sticky-header-enabled{ scroll-padding-top: 50px; } } .mw-page-container{ max-width:100vw; width:100%; box-sizing:border-box; display:flex; flex-direction:row; min-height:calc( 100% - 3.125rem - 1px - 4px - 8px ); box-sizing:border-box; background-image: url("//upload.wikimedia.org/wikipedia/commons/thumb/0/05/Wikibooksfirehazard2.svg/200px-Wikibooksfirehazard2.svg.png"); background-color:white; background-attachment:fixed; margin-left:0; margin-right:0; } @media all and (max-width:999px){ .mw-page-container{ background-image:none; } } html.vector-feature-limited-width-clientpref-0 > body > .mw-page-container, html.vector-is-page-available > body > .mw-page-container{ background-image:none; } @media all and (max-width:476px){ .mw-page-container{ min-height:calc( 100% - 6.75rem - 1px - 4px - 8px ); width:100% !important; } } @media all and (max-width:999px){ .mw-page-container{ width:100% !important; } } .mw-page-container > .mw-page-container-inner{ background-color:white; padding-left: 5px; padding-right: 5px; } .mw-page-container > .mw-page-container-inner{ max-width:100vw; margin:auto; margin-top:0; } .vector-main-menu-container, .mw-content-container{ margin-top:2px; } @media all and (min-width:999px){ .mw-page-container > .mw-page-container-inner{ padding-left:5px; padding-right:5px; max-width:100%; } .mw-page-container > .mw-page-container-inner{ width:auto; } .vector-feature-limited-width-clientpref-0 #content{ width:100%; } .mw-page-container .mw-content-container{ display:flex; flex-direction:column; } .mw-page-container .mw-content-container > #content{ height:auto; order:1; } .mw-page-container .mw-content-container > #mw-data-after-content{ order:2; } html.client-nojs #bodyContent{ width:auto !important; } html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .mw-body-header, html.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container .mw-body-header{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem ); } html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .mw-body-header{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .mw-body-header, html.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container .mw-body-header{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem ); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .mw-body-header{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .mw-body-header, html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container .mw-body-header{ width:calc(50rem + 2 * 0.625rem + 2px ); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .mw-body-header{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem ); } /**/ html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-page-toolbar, html.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container .vector-page-toolbar{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem ); } html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-page-toolbar{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-page-toolbar, html.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container .vector-page-toolbar{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem ); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-page-toolbar{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-page-toolbar, html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container .vector-page-toolbar{ width:calc(50rem + 2 * 0.625rem + 2px ); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-page-toolbar{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem ); } /**/ html.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #bodyContent, html.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container #bodyContent, html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #bodyContent, html.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container #bodyContent{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #bodyContent, html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #bodyContent{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #bodyContent, html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container #bodyContent{ width:calc(50rem + 2 * 0.625rem + 2px ); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #bodyContent{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem ); } /**/ html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 15rem + 5px ); } /**/ /**/ html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem ); } html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem ); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container #footer, html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container #footer{ width:calc(50rem + 2 * 0.625rem + 2px ); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container #footer{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem ); } /**/ html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px + 15rem + 5px ); } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container, html.vector-feature-main-menu-pinned-enabled:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 15rem + 5px ); } /**/ html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-appearance-pinned-clientpref-1 body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 8.125rem ); } html.vector-feature-appearance-pinned-clientpref-1 body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 8.125rem); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html.vector-feature-page-tools-pinned-enabled body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px + 0.625rem + 1px + 11.875rem ); } html.vector-feature-page-tools-pinned-enabled body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem + 0.625rem + 1px + 11.875rem); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start:not(.vector-strona-start-toc) .mw-page-container .vector-sitenotice-container, html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body:not(.vector-strona-start) .mw-page-container .vector-sitenotice-container{ width:calc(50rem + 2 * 0.625rem + 2px ); } html:not(.vector-feature-page-tools-pinned-enabled):not(.vector-feature-appearance-pinned-clientpref-1) body.vector-strona-start.vector-strona-start-toc.vector-strona-start-toc-prawy .mw-page-container .vector-sitenotice-container{ width:calc( 50rem + 2 * 0.625rem + 2px + 0.3 * 43.75rem + 0.3125rem ); } /**/ .mw-footer-container{ display: flex; flex-direction: row; align-items: stretch; justify-content: center; } } body, .mw-page-container, .mw-page-container-inner, .mw-content-container, #content, #bodyContent, #mw-content-text, .mw-parser-output, #footer, .vector-sitenotice-container{ max-width:-moz-available !important; max-width:-webkit-fill-available !important; max-width:stretch !important; } body.ns-10:not(.ns-submit) .mw-body-header, body.ns-828:not(.ns-submit) .vector-sitenotice-container, body.vector-page-css.ns-8 .mw-body-header, body.vector-page-js.ns-8 .mw-body-header, body.vector-page-css.ns-2 .mw-body-header, body.vector-page-js.ns-2 .mw-body-header, body.ns-10:not(.ns-submit) .vector-sitenotice-container, body.ns-828:not(.ns-submit) .vector-sitenotice-container, body.vector-page-css.ns-8 .vector-sitenotice-container, body.vector-page-js.ns-8 .vector-sitenotice-container, body.vector-page-css.ns-2 .vector-sitenotice-container, body.vector-page-js.ns-2 .vector-sitenotice-container, body.ns-10:not(.ns-submit) .vector-page-toolbar, body.ns-828:not(.ns-submit) .vector-page-toolbar, body.vector-page-css.ns-8 .vector-page-toolbar, body.vector-page-js.ns-8 .vector-page-toolbar, body.vector-page-css.ns-2 .vector-page-toolbar, body.vector-page-js.ns-2 .vector-page-toolbar, body.ns-10:not(.ns-submit) #bodyContent, body.ns-828:not(.ns-submit) #bodyContent, body.vector-page-css.ns-8 #bodyContent, body.vector-page-js.ns-8 #bodyContent, body.vector-page-css.ns-2 #bodyContent, body.vector-page-js.ns-2 #bodyContent, body.ns-10:not(.ns-submit) #footer, body.ns-828:not(.ns-submit) #footer, body.vector-page-css.ns-8 #footer, body.vector-page-js.ns-8 #footer, body.vector-page-css.ns-2 #footer, body.vector-page-js.ns-2 #footer{ width:100% !important; } @media all and (min-width:745px){ body.ns-10:not(.ns-submit) .mw-page-container > .mw-page-container-inner, body.ns-828:not(.ns-submit) .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-10 .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-10 .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-828 .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-828 .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-2.vector-page-css .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-2.vector-page-css .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-8.vector-page-css .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-8.vector-page-css .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-2.vector-page-js .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-2.vector-page-js .mw-page-container > .mw-page-container-inner, body.ns-10.ns-submit.ns-submit-8.vector-page-js .mw-page-container > .mw-page-container-inner, body.ns-828.ns-submit.ns-submit-8.vector-page-js .mw-page-container > .mw-page-container-inner, body.vector-page-css.ns-8 .mw-page-container > .mw-page-container-inner, body.vector-page-js.ns-8 .mw-page-container > .mw-page-container-inner, body.vector-page-css.ns-2 .mw-page-container > .mw-page-container-inner, body.vector-page-js.ns-2 .mw-page-container > .mw-page-container-inner, body.ns-10 .mw-page-container > .mw-page-container-inner, html.client-nojs{ width:100%; order:2; } } html.vector-feature-limited-width-clientpref-0 .mw-body-header, html.vector-feature-limited-width-clientpref-0 .vector-page-toolbar, html.vector-feature-limited-width-clientpref-0 .vector-sitenotice-container, html.vector-feature-limited-width-clientpref-0 #bodyContent, html.vector-feature-limited-width-clientpref-0 #footer, html.vector-feature-limited-width-clientpref-0 .vector-page-toolbar, html.client-nojs .mw-page-container > .mw-page-container-inner .mw-body-header, html.client-nojs .mw-page-container > .mw-page-container-inner .vector-page-toolbar, html.client-nojs .mw-page-container > .mw-page-container-inner .vector-sitenotice-container, html.client-nojs .mw-page-container > .mw-page-container-inner #bodyContent, html.client-nojs .mw-page-container > .mw-page-container-inner #footer, html.client-nojs .mw-page-container > .mw-page-container-inner .vector-page-toolbar, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner .mw-body-header, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner .vector-page-toolbar, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner .vector-sitenotice-container, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner #bodyContent, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner #footer, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner .vector-page-toolbar{ width:100% !important; } html.vector-feature-limited-width-clientpref-0 .mw-page-container > .mw-page-container-inner, html.client-nojs .mw-page-container > .mw-page-container-inner, html.client-js.vector-is-page-available .mw-page-container > .mw-page-container-inner{ max-width:100vw; width:100%; overflow:auto; } #bodyContent, #content{ box-sizing:border-box; } .vector-feature-main-menu-pinned-disabled.vector-toc-not-available .mw-page-container-inner, .vector-feature-main-menu-pinned-disabled.vector-feature-toc-pinned-clientpref-0 .mw-page-container-inner{ grid-template-columns: minmax(0,1fr); } body{ background-color:white; } .mw-footer-container{ padding: 7px 0 2px 0; } .mw-footer-container > .mw-footer{ padding:10px 5px; } .mw-page-container{ padding-right:0; padding-left:0; box-sizing:border-box; min-width:auto; } @media all and (min-width: 1000px){ .mw-body{ grid-template: min-content min-content min-content 1fr / minmax(0,1fr) auto; grid-template-areas: 'titlebar titlebar' 'toolbar toolbar' 'content columnEnd' '.. columnEnd'; column-gap:0 !important; width:100%; box-sizing:border-box; } } .mw-page-container-inner{ grid-template-columns: 15rem minmax(0,1fr); column-gap: 5px; } html.vector-column-end .vector-appearance-landmark{ max-width:11.875rem; } html.client-nojs.vector-feature-appearance-pinned-clientpref-1:not(.vector-feature-page-tools-pinned-enabled) .vector-column-end{ display:none; } html.client-js.vector-feature-appearance-pinned-clientpref-1:not(.vector-feature-page-tools-pinned-enabled) .vector-column-end{ width:8.125rem !important; } html.client-js.vector-feature-page-tools-pinned-enabled.vector-feature-appearance-pinned-clientpref-0 .vector-column-end{ width:11.875rem; } html.client-nojs.vector-feature-page-tools-pinned-enabled .vector-column-end, html.client-js.vector-feature-appearance-pinned-clientpref-1.vector-feature-page-tools-pinned-enabled .vector-column-end{ width:11.875rem; } .vector-sticky-pinned-container{ padding-bottom:5px; } .vector-sticky-pinned-container::after{ display:none; } .vector-sticky-pinned-container{ top:0; } .client-js.vector-sticky-header-enabled body:not(.vector-sticky-header-visible) .vector-sticky-pinned-container{ top: 0 !important; max-height:calc( 100vh - 3px ); } .client-js.vector-sticky-header-enabled body.vector-sticky-header-visible .vector-sticky-pinned-container{ top: 3.2rem !important; max-height: calc(100vh - 3.2rem - 5px); } .client-js.vector-sticky-header-enabled body.vector-sticky-header-visible .vector-column-start .vector-sticky-pinned-container{ top: 3.5rem !important; } #siteNotice{ margin:unset; } #centralNotice:not(:empty){ margin: 5px 0 8px 0; } #centralNotice:not(:empty) > div:first-of-type{ margin-top:5px; } #centralNotice:not(:empty) > div:last-of-type{ margin-bottom:8px; } .mw-indicators{ white-space:nowrap; font-size: 0.875rem; line-height: 1.4; } .mw-indicators .mw-parser-output{ font-size: 1.0em; line-height: 1.4; } .vector-page-titlebar-blank .mw-indicators{ display:none; } .mw-body-header{ position:relative; height:2.6rem; box-sizing:border-box; } .mw-body-header > .firstHeading:not(:hover){ height:100%; box-sizing:border-box } body .firstHeading:not(:hover) > .plainlinks, body:not(.action-view) .firstHeading:not(:hover) > .plainlinks{ display:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; } body .firstHeading > .plainlinks, body:not(.action-view) .firstHeading > .plainlinks{ text-shadow:none; } .mw-body h1.firstHeading{ font-size: 1.6rem; line-height: 1.4; } body.action-view:not(.ns-special) .firstHeading{ min-height:100%; box-sizing:border-box; overflow:hidden; } body.action-view:not(.ns-special) .firstHeading:not(:hover){ height:100%; } body.action-view:not(.ns-special) .firstHeading:not(:hover){ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; border-bottom:0; padding-top:6px; margin-right:7px; } body:not(.ns-0).action-view:not(.ns-special) .mw-body-header:not(.vector-page-titlebar-blank) .firstHeading:not(:hover){ display:block !important; } body:not(.ns-0).action-view:not(.ns-special) .mw-body-header.vector-page-titlebar-blank .firstHeading:not(:hover){ display:none !important; } html.vector-feature-limited-width-content-enabled body.ns-0.action-view:not(.ns-special) .firstHeading:not(:hover){ display:flex; flex-direction:row; justify-content:flex-start; } body:not(.action-view) .firstHeading:not(:hover), body.action-view.ns-special .firstHeading:not(:hover), html.vector-feature-limited-width-content-disabled body.action-view .firstHeading:not(:hover){ display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; border-bottom:0; padding-top:6px; } body:not(.action-view) firstHeading:first-child:not(:hover), body.action-view.ns-special firstHeading:first-child:not(:hover), html.vector-feature-limited-width-content-disabled body.action-view .firstHeading:first-child:not(:hover){ margin-left:0; } html.vector-feature-toc-pinned-clientpref-0 body:not(.action-view) .firstHeading:not(:first-child):not(:hover), html.vector-feature-toc-pinned-clientpref-0 body.action-view.ns-special .firstHeading:not(:first-child):not(:hover), html.vector-feature-toc-pinned-clientpref-0 body.action-view .firstHeading:not(:first-child):not(:hover){ margin-left:5px; } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available body:not(.action-view) .firstHeading:not(:first-child):not(:hover), html.vector-feature-toc-pinned-clientpref-1.vector-toc-available body.action-view.ns-special .firstHeading:not(:first-child):not(:hover), html.vector-feature-toc-pinned-clientpref-1.vector-toc-available body.action-view .firstHeading:not(:first-child):not(:hover){ margin-left:0; } body.ns-0 .firstHeading:not(:hover) > :not(.mw-page-title-main):not(.mw-editsection):not(#mw-article-numbering):first-child, body.ns-0:not(.action-view) .firstHeading:not(:hover) > :not(.mw-page-title-main):not(.mw-editsection):not(#mw-article-numbering):first-child{ order:3; } body.ns-0 .firstHeading:not(:hover) > #mw-article-numbering:not(.mw-page-title-main):not(.mw-editsection):first-child + *, body.ns-0:not(.action-view) .firstHeading:not(:hover) > #mw-article-numbering:not(.mw-page-title-main):not(.mw-editsection) + *{ order:3; } body.ns-0 .firstHeading:not(:hover) > #mw-article-numbering:not(.mw-page-title-main):not(.mw-editsection):first-child, body.ns-0:not(.action-view) .firstHeading:not(:hover) > #mw-article-numbering:not(.mw-page-title-main):not(.mw-editsection):first-child{ order:1; } body.ns-0 .firstHeading:not(:hover) > .mw-page-title-main, body.ns-0:not(.action-view) .firstHeading:not(:hover) > .mw-page-title-main{ order:2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; } body.ns-0 .firstHeading > .mw-editsection{ height:1.2em; line-height:3.8; } body.ns-0 .firstHeading:not(:hover) > .mw-editsection{ order:4; } body .firstHeading:hover{ display:block; border:1px solid #eaecf0; border-radius:10px; background-color:white; position:absolute; top:0; /*left:-6px;*/ width:auto; padding:5px; z-index:2; } .firstHeading:first-child:hover{ left:-6px; } html.vector-feature-toc-pinned-clientpref-0 .firstHeading:not(:first-child):hover{ left:1.4375rem; } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available .firstHeading:not(:first-child):hover{ left:-6px; } header.mw-body-header{ justify-content:space-between; width:100%; box-sizing:border-box; } #vector-main-menu > div.vector-pinnable-header{ margin-left:5px; } body .firstHeading:hover{ word-wrap:break-word; hyphens:auto; width:auto; } html.vector-feature-limited-width-content-enabled body.ns-0.action-view .firstHeading:hover{ display:grid !important; justify-content:start; grid-template-columns:auto auto auto auto minmax(auto,1fr); } body.ns-0.action-view .firstHeading:hover > #mw-article-numbering:first-child{ grid-row-start:1; grid-row-end:2; grid-column-start:1; grid-column-end:2; width:auto; } body.ns-0.action-view .firstHeading:hover > :not(#mw-article-numbering):first-child, body.ns-0.action-view .firstHeading:hover > #mw-article-numbering:first-child + *{ grid-row-start:1; grid-row-end:2; grid-column-start:3; grid-column-end:4; width:auto; } body.ns-0.action-view .firstHeading:hover > .mw-page-title-main{ grid-row-start:1; grid-row-end:2; grid-column-start:2; grid-column-end:3; width:auto; } body.ns-0.action-view .firstHeading:hover > .mw-editsection{ grid-row-start:1; grid-row-end:2; grid-column-start:4; grid-column-end:5; width:auto; } body.ns-0.action-view .firstHeading:hover > .plainlinks{ grid-row-start:auto; grid-row-end:auto; grid-column-start:1; grid-column-end:6; width:auto; } body.action-view .firstHeading:hover{ display:block !important; } .mw-body-header > .mw-indicators{ order:3; margin-top:auto; margin-bottom:3px; } .mw-body-header::before{ content:''; display:block; order:3; width:auto; flex:auto 1 1; } .mw-body-header > .vector-toc-landmark{ width:1.5rem; height:2.125rem; } .mw-body-header > .vector-toc-landmark{ order:1; } html.vector-feature-toc-pinned-clientpref-0 .vector-toc-landmark{ margin-right:0; } .mw-body-header > .vector-toc-landmark ~ #firstHeading:not(:hover){ order:2; } .mw-body-header > .vector-toc-landmark ~ #firstHeading:not(:hover) ~ #ca-addsection{ order:3; } .mw-body-header > .vector-toc-landmark ~ #firstHeading:not(:hover) ~ #p-lang-btn{ order:4; } .mw-body-header > .vector-toc-landmark ~ #firstHeading:hover ~ #p-lang-btn{ order:3; } /**/ .mw-body-header > #firstHeading:first-child:not(:hover){ order:2; } .mw-body-header > #firstHeading:first-child:not(:hover) ~ #ca-addsection{ order:3; } .mw-body-header > #firstHeading:first-child:not(:hover) ~ #p-lang-btn{ order:4; } .mw-body-header > #firstHeading:first-child:hover ~ #ca-addsection{ order:3; } .mw-body-header > #firstHeading:first-child:hover ~ #p-lang-btn{ order:4; } #ca-addsection{ margin-left:0; margin-right:0; } .vector-page-titlebar{ flex-wrap:nowrap; } /**/ .vector-page-titlebar .vector-page-titlebar-toc .vector-menu-heading{ padding:0.3125em !important; } #vector-page-titlebar-toc-label{ height: 2.125rem; max-width: 28rem; min-height:unset; } .vector-toc-landmark{ margin-top:auto; margin-bottom:0; } .mw-body-header .mw-portlet-lang{ margin-right:0; } #vector-page-titlebar-toc-checkbox{ display:none; } body .firstHeading:hover > .plainlinks, body:not(.action-view) .firstHeading:hover > .plainlinks{ display:block; } #mw-panel{ border-radius: 10px; border: 1px solid #c8ccd1; padding: 5px; } /**/ #mw-panel .vector-menu-heading:not(.mw-menu-inactive), #vector-main-menu-pinned-container .vector-menu-heading:not(.mw-menu-inactive), #vector-main-menu-unpinned-container .vector-menu-heading:not(.mw-menu-inactive), #vector-page-tools-pinned-container .vector-menu-heading:not(.mw-menu-inactive), #vector-page-tools-unpinned-container .vector-menu-heading:not(.mw-menu-inactive){ background-color:whitesmoke; } #mw-panel .mw-menu-inactive, #vector-main-menu-pinned-container .mw-menu-inactive, #vector-main-menu-unpinned-container .mw-menu-inactive, #vector-page-tools-pinned-container .mw-menu-inactive, #vector-page-tools-unpinned-container .mw-menu-inactive{ background-color:lightsteelblue; color:white; } #mw-panel .vector-menu-heading, #vector-main-menu-pinned-container .vector-menu-heading, #vector-main-menu-unpinned-container .vector-menu-heading, #vector-page-tools-pinned-container .vector-menu-heading, #vector-page-tools-unpinned-container .vector-menu-heading{ padding-left:5px !important; padding-right:5px !important; margin-left:0 !important; display:block; border-radius:5px; border:1px solid #c8ccd1; margin-top:3px; margin-bottom:0; } #mw-panel .vector-menu-content:not(.mw-items-inactive), #vector-main-menu-unpinned-container .vector-menu-content:not(.mw-items-inactive), #vector-page-tools-pinned-container .vector-menu-content:not(.mw-items-inactive), #vector-page-tools-unpinned-container .vector-menu-content:not(.mw-items-inactive){ display:block; border-radius:5px; border:1px solid #c8ccd1; padding: 5px; margin-top:2px; } #mw-panel .vector-menu-content:not(.mw-items-inactive) > ul, #vector-main-menu-unpinned-container .vector-menu-content:not(.mw-items-inactive) > ul, #vector-page-tools-pinned-container .vector-menu-content:not(.mw-items-inactive) > ul, #vector-page-tools-unpinned-container .vector-menu-content:not(.mw-items-inactive) > ul{ margin-top:0; } #mw-panel .mw-items-inactive, #vector-main-menu-unpinned-container .mw-items-inactive, #vector-page-tools-pinned-container .mw-items-inactive, #vector-page-tools-unpinned-container .mw-items-inactive{ display:none; } .vector-main-menu #p-navigation .vector-menu-heading{ display:block; } #mw-panel .vector-main-menu-action, #vector-main-menu-unpinned-container .vector-main-menu-action, #vector-page-tools-pinned-container .vector-main-menu-action, #vector-page-tools-unpinned-container .vector-main-menu-action{ display:none; } #mw-panel.hidden_sidebar_panel{ position:relative; z-index:1; } #mw-panel.hidden_sidebar_panel > #hideSidebar_close_lpanel{ position:absolute; right:0; } #mw-panel.hidden_sidebar_panel > #vector-main-menu-pinned-container{ display:none; } #mw-panel #vector-main-menu-pinned-container{ padding-left:0 !important; } #vector-main-menu-pinned-container .vector-main-menu{ margin-left:0 !important; margin-top:0 !important; } #mw-data-after-content .cdx-card{ margin:5px 0; border-radius:10px; } .vector-unpinned-container .vector-menu{ margin:0 5px; } #mw-content-text .mw-parser-output code{ position:relative; } .mw-parser-output pre{ margin-top:8px; margin-bottom:8px; background-color: #f8f9fa; color: #000; border: 1px solid #eaecf0; word-wrap:break-word; word-break:break-word; hyphens:auto; box-sizing:border-box; font-size:110%; } .client-js .vector-search-box-vue .cdx-search-input{ position:relative; } .client-js .vector-search-box-vue .vector-typeahead-search .cdx-text-input__input{ border-right-color:#a2a9b1 !important; } .client-js .vector-search-box-vue .vector-typeahead-search .cdx-search-input__end-button{ position:absolute; right:0; } html.client-js .vector-search-box-vue .vector-typeahead-search--active .cdx-search-input__end-button, html.client-js .vector-search-box-vue .vector-typeahead-search:hover .cdx-search-input__end-button{ position:relative; } .mw-content-container #content{ border-radius:10px; border:1px solid #c8ccd1; padding:10px; padding-top:8px; } body:not(.action-view):not(.ns-special) .vector-body-before-content{ float:right; } body.ns-special .vector-body-before-content .mw-indicators{ margin-top:6px; float:right; padding-top:0; } body:not(.ns-special) .vector-body-before-content .mw-indicators{ margin-top:2px; float:right; padding-top:0; margin-bottom:0.2px; } .vector-body-before-content > .mw-indicators img, .mw-body-header .mw-indicators img{ max-height:1.7em; } body:not(.page-Wikibooks_Strona_główna).action-view:not(.ns-special) .vector-body-before-content::after{ content:''; display:block; clear:both; order:2; } body.action-view #bodyContent div#siteSub{ display:block !important; } body.action-view:not(.ns-special) .vector-body-before-content #siteSub{ display:block; float:left; order:1; margin-top:5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size:0.8125rem; line-height:1.4em; padding-bottom:1px; } body.action-view:not(.ns-special) .vector-body-before-content{ white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } body.action-view:not(.ns-special) .vector-body-before-content .mw-indicators{ order:3; white-space:nowrap; } body.action-view:not(.ns-special) .vector-body-before-content{ border-bottom:1px solid #c8ccd1; padding-bottom:3px; display:flex; flex-direction:row; justify-content:space-between; align-items: flex-end; } #mw-content-text{ margin-top:10px; } .catlinks{ margin-top:7px !important; } .mw-category-generated > :first-child > h2:first-child{ margin-top:14px; } body.ns-14 .mw-category-generated > p:only-child{ border:1px solid #c8ccd1; padding:5px; margin-top:5px; margin-bottom:5px; } body.ns-14 .mw-parser-output.blank{ margin-top:-3px; } body.ns-14 .mw-parser-output:-moz-only-whitespace{ margin-top:-3px; } body.ns-14 .mw-parser-output.blank ~ .printfooter{ margin-top:3px; } body.ns-14 .mw-parser-output:-moz-only-whitespace ~ .printfooter{ margin-top:3px; } #content::after{ content:''; clear:both; display:block; } #bodyContent{ margin-bottom:0; box-sizing: border-box; } body.action-edit #bodyContent #editform{ margin-top:5px; } body{ font-family: Arial, Helvetica, "Free Helvetian", FreeSans, sans-serif; font-stretch:normal; font-variant:normal; font-style:normal; font-weight:normal; font-size-adjust:none; letter-spacing:normal; word-spacing:normal; text-align:left; word-wrap:break-word; hyphens:auto; } body.action-history #mw-content-text > *:first-child{ margin-top:8px; } .mw-parser-output hr{ font-size:1.2em; } #mw-content-text, #mw-content-text .mw-message-box-warning, #mw-content-text .mw-parser-output{ font-size: calc(0.875rem * 0.89944); line-height: 1.4em; } .mw-ui-icon{ font-size:1rem; } body{ font-size:1rem; line-height:1.4em; } /**/ body.action-view #mw-content-text .mw-parser-output:first-child:not(.blank)::before, body.action-view #mw-content-text .mw-parser-output.first-child:not(.blank)::before{ content:''; clear:both; display:block; } body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view #mw-content-text .mw-parser-output:first-child:not(.blank)::before, body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view #mw-content-text .mw-parser-output.first-child:not(.blank)::before{ margin-bottom:8px; } body.page-Wikibooks_Strona_główna:not(.ns-special).action-view #mw-content-text .mw-parser-output:first-child:not(.blank)::before, body.page-Wikibooks_Strona_główna:not(.ns-special).action-view #mw-content-text .mw-parser-output.first-child:not(.blank)::before{ margin-bottom:0; } body.action-view:not(.ns-14) #mw-content-text .mw-parser-output:last-child:not(.blank)::after, body.action-view:not(.ns-14) #mw-content-text .mw-parser-output.last-child:not(.blank)::after{ content:''; clear:both; display:block; } body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view:not(.ns-14) #mw-content-text .mw-parser-output:last-child:not(.blank)::after, body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view:not(.ns-14) #mw-content-text .mw-parser-output.last-child:not(.blank)::after{ margin-top:3px; } body.page-Wikibooks_Strona_główna.action-view #mw-content-text .mw-parser-output:last-child:not(.blank)::after, body.page-Wikibooks_Strona_główna.action-view #mw-content-text .mw-parser-output.last-child:not(.blank)::after{ margin-top:0; } body.ns-special.action-view #mw-content-text .mw-parser-output:first-child:not(.blank)::before, body.ns-special.action-view #mw-content-text .mw-parser-output.first-child:not(.blank)::before{ margin-bottom:0; } body.ns-special.action-view #mw-content-text .mw-parser-output:last-child:not(.blank)::after, body.ns-special.action-view #mw-content-text .mw-parser-output.last-child:not(.blank)::after{ margin-top:0; } /**/ body.action-view #mw-content-text .mw-parser-output:first-child:not(:-moz-only-whitespace)::before, body.action-view #mw-content-text .mw-parser-output.first-child:not(:-moz-only-whitespace)::before{ content:''; clear:both; display:block; } body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view #mw-content-text .mw-parser-output:first-child:not(:-moz-only-whitespace)::before, body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view #mw-content-text .mw-parser-output.first-child:not(:-moz-only-whitespace)::before{ margin-bottom:8px; } body.page-Wikibooks_Strona_główna:not(.ns-special).action-view #mw-content-text .mw-parser-output:first-child:not(:-moz-only-whitespace)::before, body.page-Wikibooks_Strona_główna:not(.ns-special).action-view #mw-content-text .mw-parser-output.first-child:not(:-moz-only-whitespace)::before{ margin-bottom:0; } body.action-view:not(.ns-14) #mw-content-text .mw-parser-output:last-child:not(:-moz-only-whitespace)::after, body.action-view:not(.ns-14) #mw-content-text .mw-parser-output.last-child:not(:-moz-only-whitespace)::after{ content:''; clear:both; display:block; } body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view:not(.ns-14) #mw-content-text .mw-parser-output:last-child:not(:-moz-only-whitespace)::after, body:not(.ns-special):not(.page-Wikibooks_Strona_główna).action-view:not(.ns-14) #mw-content-text .mw-parser-output.last-child:not(:-moz-only-whitespace)::after{ margin-top:3px; } body.page-Wikibooks_Strona_główna.action-view #mw-content-text .mw-parser-output:last-child:not(:-moz-only-whitespace)::after, body.page-Wikibooks_Strona_główna.action-view #mw-content-text .mw-parser-output.last-child:not(:-moz-only-whitespace)::after{ margin-top:0; } body.ns-special.action-view #mw-content-text .mw-parser-output:first-child:not(:-moz-only-whitespace)::before, body.ns-special.action-view #mw-content-text .mw-parser-output.first-child:not(:-moz-only-whitespace)::before{ margin-bottom:0; } body.ns-special.action-view #mw-content-text .mw-parser-output:last-child:not(:-moz-only-whitespace)::after, body.ns-special.action-view #mw-content-text .mw-parser-output.last-child:not(:-moz-only-whitespace)::after{ margin-top:0; } /**/ body:not(.page-Wikibooks_Strona_główna) .printfooter{ display:block; padding:5px; border:1px solid #c8ccd1; margin-top:6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; clear:both; } .noarticletext{ margin-top:0; margin-bottom:7px; } body.action-view #bodyContent #contentSub{ display:block !important; } #contentSub{ margin-top:5px !important; } #contentSub > #pwContent > #pwPathway, #contentSub > #pwContent > #pwPathway + #pwNav, #contentSub > #mw-content-subtitle, #contentSub > #mw-content-subtitle > .subpages, #contentSub2 > .subpages > .mw-undelete-subtitle{ font-size:0.75rem; line-height:1.2em; } #contentSub2{ margin-top:4px !important; } #contentSub2 > .subpages{ border-bottom:1px solid #c8ccd1; padding-bottom:5px; padding-top:2px; } #pwContent:not(:empty){ border-bottom:1px solid #c8ccd1; padding-bottom:3px; font-size:100%; } html:not(.client-nojs) body:not(.mw-special-Watchlist) #mw-content-subtitle:not(:empty), html.client-nojs #mw-content-subtitle:not(:empty){ border-bottom:1px solid #c8ccd1; padding-bottom:3px; } #mw-content-subtitle > .subpages:not(:last-child){ border-bottom:1px solid #c8ccd1; padding-bottom:3px; } #mw-content-subtitle .mw-message-box-warning:not(:last-child){ margin:10px 0; } #mw-content-subtitle .mw-message-box-warning:last-child{ margin:10px 0 8px 0; } body.action-edit #mw-content-text > :not(.mw-editnotice):not(.mw-parser-output):not(.mw-message-box-warning):first-child{ margin-top:10px !important; margin-bottom:10px !important; } #mw-content-subtitle #redirectsub, #mw-content-subtitle .mw-redirectedfrom{ display:block; margin: 5px 0 2px 0; } #mw-content-subtitle .mw-redirectedfrom:not(:last-child){ border-bottom: 1px solid #c8ccd1; } #mw-content-text > .mw-message-box-warning:first-child{ margin:10px 0; } #mw-content-text > .mw-message-box-warning{ margin:5px 0 10px 0; } body.action-edit #mw-content-text > .mw-editnotice:first-child{ margin-top:12px; } body.action-edit #mw-content-text > :not(.mw-editnotice):not(.mw-parser-output):not(.mw-message-box-warning):first-child{ margin-top:-3px; } body.action-view.ns-special #mw-content-text > :not(div):not(p):first-child{ margin-top:18px; } body:not(.action-view) #mw-content-text > p:first-child{ margin-top:3px; } #contentsub::after{ content:''; display:block; } .previewnote, #wikiPreview.ontop{ margin-bottom:10px; max-width:unset; } body.action-submit #mw-content-text > #wikiPreview > .previewnote > #mw-previewheader{ margin-top:0.8em; margin-bottom:0.4em; } div.thumb.tright:first-child, div.thumb.tleft:first-child{ margin-top:0; } #mw-content-text .mw-parser-output > p:first-child{ margin-top:0; } #mw-content-text .mw-parser-output > p:not(.br-clear-both):last-child{ margin-bottom:0; } #mw-content-text .mw-parser-output > :not(p).floatleft:first-child + p, #mw-content-text .mw-parser-output > :not(p).floatright:first-child + p, #mw-content-text .mw-parser-output > :not(p).tleft:first-child + p, #mw-content-text .mw-parser-output > :not(p).tright:first-child + p{ margin-top:0; } #mw-content-text .mw-parser-output .template-documentation:first-of-type{ margin-top:0; box-sizing:border-box; } #mw-content-text .mw-parser-output > :not(style):not(link) ~ .template-documentation{ margin-top:10px !important; box-sizing:border-box !important; } #mw-content-text .mw-parser-output #documentation-meta-data:not(:last-child){ margin-top:3px !important; margin-bottom:3px !important; } #mw-content-text .mw-parser-output #documentation-meta-data:last-child{ margin-top:3px !important; margin-bottom:0 !important; } body.ns-14 .mw-category-generated > * > .mw-content-ltr > .mw-category > .mw-category-group > h3.only-whitespace.is-only-whitespace{ display:none; } body.ns-14 .mw-category-generated > * > .mw-content-ltr > .mw-category > .mw-category-group > h3:-moz-only-whitespace{ display:none; } body.ns-14 .mw-category-generated > * > .mw-content-ltr > .mw-category > .mw-category-group > h3:blank{ display:none; } .vector-body{ font-size: calc(1rem * 0.875); line-height: 1.5em; } @media all and (min-width:999px){ html.vector-feature-page-tools-pinned-enabled #bodyContent.vector-body, html.vector-feature-appearance-pinned-clientpref-1 #bodyContent.vector-body{ border-right: 1px solid #c8ccd1; border-bottom:1px solid #c8ccd1; padding-right:0.625rem; padding-bottom:0.625rem; } } .vector-toc .vector-toc-list-item a{ font-size:0.8125rem; line-height:1.4em; } .wb-langlinks-link > a::before{ margin-left:-8px; } /**/ .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:hover, .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:active:hover, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:hover, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:active:hover, .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:active:hover, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:active:hover{ display:block; outline:1px solid #eaecf0; border-radius:10px; box-sizing:border-box; width:100%; } .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:hover, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:hover{ background-color:blue !important; } .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:active:hover, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:active:hover, .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:active:hover, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:active:hover{ background-color:green !important; } .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:hover, .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:hover, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:hover{ color:white !important; } .vector-pinned-container .vector-toc ul.vector-toc-contents li > a, .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a, .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a, .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a{ display:block; width:100%; text-decoration:none; font-size: 0.8125rem; line-height:1.4em; box-sizing:border-box; padding:0 5px !important; } .vector-feature-toc-pinned-clientpref-1.vector-toc-available #vector-toc-pinned-container{ margin-top:0; } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available .vector-main-menu-container{ margin-bottom:5px; } .vector-column-start .vector-main-menu-container, html.vector-feature-toc-pinned-clientpref-1.vector-toc-available .vector-column-start .vector-sticky-pinned-container{ margin-left:12px; } @media (min-width: 999px){ html.vector-feature-toc-pinned-clientpref-1.vector-toc-available #vector-toc-pinned-container{ border-radius:10px; border:1px solid #c8ccd1; padding:8px; padding-left:6px; } } #mw-panel-toc-list{ margin-top:6px; } #vector-toc-pinned-container .vector-toc::after{ display:none; } .vector-toc .vector-toc-text{ padding: 3px 0 !important; } button.cdx-button{ z-index:1; } .vector-menu-tabs .mw-list-item.vector-tab-noicon > a, .vector-page-toolbar-container .vector-dropdown.vector-tab-noicon > a, .vector-menu-tabs .mw-list-item .vector-dropdown-label, .vector-page-toolbar-container .vector-dropdown .vector-dropdown-label{ padding-bottom:3px; margin-bottom:-1px; } .vector-menu-tabs .mw-list-item > a, .vector-page-toolbar-container .vector-dropdown > a, .vector-menu-tabs .mw-list-item .vector-dropdown-label, .vector-page-toolbar-container .vector-dropdown .vector-dropdown-label{ max-height:37px; line-height:1.4em; } .mw-diff-table-prefix{ max-width:calc( 100% - 2em ); } .vector-column-start{ border-top:0; margin-top:0; } html.vector-feature-page-tools-pinned-enabled .vector-column-end, html.vector-feature-appearance-pinned-clientpref-1 .vector-column-end{ margin-top:0; margin-left:-1px; border: 1px solid #c8ccd1; border-top:0; padding-top:2px; } .vector-column-start .vector-sticky-pinned-container{ margin-left:0; } .vector-header-container .mw-header{ max-width:none; min-width:auto; } .vector-header-container{ padding-left:0; padding-right:0; } .vector-header-container .mw-header{ padding-left:1.5rem; padding-right:1.5rem; } .client-js.vector-feature-toc-pinned-clientpref-0 body:not(.vector-sticky-header-visible) .vector-page-titlebar-toc{ margin-right:0; } html.vector-feature-toc-pinned-clientpref-1.vector-toc-available #vector-toc-pinned-container{ padding-left:15px; } .vector-pinned-container{ padding: 16px 8px; padding-top:5px; padding-bottom:0; } .vector-dropdown .vector-dropdown-content{ padding-right:4px; padding-bottom:0; /*width:800px;*/ } .vector-dropdown#vector-page-titlebar-toc .vector-dropdown-content{ padding-left:12px } .vector-dropdown#vector-page-tools-dropdown .vector-dropdown-content{ padding-left:4px; padding-bottom:8px; } .vector-dropdown#vector-main-menu-dropdown .vector-dropdown-content{ padding-left:4px; } .client-js.vector-feature-toc-pinned-clientpref-0 body:not(.vector-sticky-header-visible) .vector-page-titlebar-toc .vector-dropdown-content{ /*max-width:200px;*/ } .mw-header{ grid-template: auto / 15em minmax(0,1fr); grid-template-areas:'headerStart headerEnd'; } #p-navigation.mw-portlet-navigation{ margin-top:0px; } .vector-menu.mw-portlet:not(.mw-portlet-navigation){ margin-top:4px; } .vector-toc .vector-toc-list-item-active > .vector-toc-link .vector-toc-text, .vector-toc .vector-toc-level-1-active:not(.vector-toc-list-item-expanded) > .vector-toc-link .vector-toc-text, .vector-toc .vector-toc-list-item-active.vector-toc-level-1-active > .vector-toc-link .vector-toc-text{ width:unset !important; } html.skin-theme-clientpref-night > body .vector-page-toolbar-container .vector-dropdown{ border-bottom:1px solid black; } html.skin-theme-clientpref-night > body ul.redirectText > li{ background-color:white !important; } html.skin-theme-clientpref-night > body ul.redirectText > li a{ background-color:black !important; color:white !important; } html.skin-theme-clientpref-night > body .mw-revslider-revision{ background-color:white !important; z-index:2; } html.skin-theme-clientpref-night > body .mw-revslider-revision > .mw-revslider-revision-border-box{ background-color:transparent !important; } html.skin-theme-clientpref-night > body > .mw-revslider-revision-tooltip{ filter:grayscale(100%); } html.skin-theme-clientpref-night > body span.ext-discussiontools-init-replylink-buttons{ border-color:none; color:white; background-color:unset; border-color:unset; } html.skin-theme-clientpref-night > body > .mw-page-container, html.skin-theme-clientpref-night > body > .mw-page-container > .mw-page-container-inner{ filter:grayscale(100%); } html.skin-theme-clientpref-night > body.action-view td.diff-deletedline .diffchange, html.skin-theme-clientpref-night > body.action-submit td.diff-deletedline .diffchange{ background: var(--background-color-content-removed,#ffe49c); filter:invert(100%) grayscale(100%); } html.skin-theme-clientpref-night > body.action-view td.diff-addedline .diffchange, html.skin-theme-clientpref-night > body.action-submit td.diff-addedline .diffchange{ background: var(--background-color-content-added,#a3d3ff); filter:invert(100%) grayscale(100%); } html.skin-theme-clientpref-night > body .imeselector{ background: var(--background-color-content-added,#a3d3ff); filter:invert(100%) grayscale(100%); } html.skin-theme-clientpref-night > body, html.skin-theme-clientpref-night > body > .mw-page-container, html.skin-theme-clientpref-night > body > .mw-page-container :not(.redirectText) > *:not(img):not(.vector-icon):not(hr):not(br):not(.mw-notification-area-overlay):not(.redirectText), html.skin-theme-clientpref-night > body > .mw-page-container > *:not(img):not(.vector-icon):not(hr):not(br):not(.mw-notification-area-overlay):not(.redirectText), html.skin-theme-clientpref-night > body > .vector-header-container, html.skin-theme-clientpref-night > body > .vector-header-container *:not(img):not(.vector-icon):not(hr):not(br):not(.mw-notification-area-overlay){ color:white; background-color:black; border-color:white; } html.skin-theme-clientpref-night > body > div.ui-dialog, html.skin-theme-clientpref-night > body > div.ui-dialog *{ background-color:black; color:white; border-color:white; } html.skin-theme-clientpref-night > body > div.ui-dialog > div.ui-dialog-titlebar{ background-image:unset !important; background-color:black !important; } html.skin-theme-clientpref-night > body > div.ui-dialog > div.ui-dialog-content > fieldset > div.wikieditor-toolbar-field-wrapper > input:focus{ filter:invert(100%) grayscale(100%); background-color:transparent !important; } html.skin-theme-clientpref-night > body > #mw-teleport-target{ filter:grayscale(100%); } html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output span[typeof="mw:File"], html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output span[typeof="mw:File"] *, html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output figure[typeof="mw:File"], html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output figure[typeof="mw:File"] *{ background-color:transparent !important; color:unset !important; background-color:unset !important; } html.skin-theme-clientpref-night > body > .mw-page-container .imeselector, html.skin-theme-clientpref-night > body > .mw-page-container .mw-parser-output img, html.skin-theme-clientpref-night > body > .mw-page-container .mw-footer-container img{ filter:invert(100%) grayscale(100%) !important; background-color:transparent !important; } html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output, html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output :not(.redirectText) > *:not(img):not(.redirectText), html.skin-theme-clientpref-night > body > .mw-page-container #mw-content-text .mw-parser-output > *:not(img):not(.redirectText){ background-color:black !important; color:white !important; border-color:white !important; } html.skin-theme-clientpref-night > body .vector-pinned-container .vector-toc ul.vector-toc-contents li a, html.skin-theme-clientpref-night > body .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a, html.skin-theme-clientpref-night > body .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a, html.skin-theme-clientpref-night > body .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a{ z-index:0 !important; position:relative !important; } html.skin-theme-clientpref-night > body .vector-pinned-container .vector-toc ul.vector-toc-contents li > a:hover, html.skin-theme-clientpref-night > body .vector-unpinned-container .vector-toc ul.vector-toc-contents li > a:hover, html.skin-theme-clientpref-night > body .vector-pinned-container .vector-menu ul.vector-menu-content-list li > a:hover, html.skin-theme-clientpref-night > body .vector-unpinned-container .vector-menu ul.vector-menu-content-list li > a:hover{ background-color:black !important; color:white !important; border-color:white !important; z-index:1 !important; position:relative !important; } html.skin-theme-clientpref-night > body #mw-content-text > div.printfooter{ z-index:1; position:relative; } html.skin-theme-clientpref-night > body .mw-footer-container, html.skin-theme-clientpref-night > body .mw-footer-container *:not(img), html.skin-theme-clientpref-night > body form.mw-editform .editButtons, html.skin-theme-clientpref-night > body form.mw-editform .editButtons *, html.skin-theme-clientpref-night > body .vector-menu-heading, html.skin-theme-clientpref-night > body .vector-menu-heading *, html.skin-theme-clientpref-night > body > .mw-page-container div.group > div.tool > div.menu, html.skin-theme-clientpref-night > body > .mw-page-container div.group > div.tool > div.menu *{ color:white !important; background-color:black !important; border-color:white !important; } html.skin-theme-clientpref-night > body > div.uls-menu, html.skin-theme-clientpref-night > body > div.uls-menu *:not(.oo-ui-iconElement-icon), html.skin-theme-clientpref-night > body > .language-settings-dialog, html.skin-theme-clientpref-night > body > .language-settings-dialog *:not(.oo-ui-iconElement-icon){ color:white; background-color:black; border-color:white; filter:invert(0%); } html.skin-theme-clientpref-night > body > div.uls-menu .oo-ui-iconElement-icon{ background-color:transparent !important; filter:invert(100%) grayscale(100%) !important; } html.skin-theme-clientpref-night > body > .language-settings-dialog .row .uls-display-settings-tab-switcher, html.skin-theme-clientpref-night > body > .language-settings-dialog .uls-sub-panel{ background-color:transparent !important; border:0 !important; } html.skin-theme-clientpref-night > body > .language-settings-dialog .row .uls-display-settings-tab-switcher button, html.skin-theme-clientpref-night > body > .language-settings-dialog .uls-sub-panel button{ background-color:black !important; color:white !important; border-color:white !important; } html.skin-theme-clientpref-night > body > .language-settings-dialog .settings-text:hover{ background-color:white!important; color:black !important; } html.skin-theme-clientpref-night > body > .language-settings-dialog .settings-text:not(:hover){ background-color:black!important; color:white !important; } html.skin-theme-clientpref-night > body > .language-settings-dialog #languagesettings-settings-panel{ background-color:transparent !important; } html.skin-theme-clientpref-night > body > .vector-header-container #p-vector-user-menu-userpage a{ font-weight:bolder; } html.skin-theme-clientpref-night > body::selection, html.skin-theme-clientpref-night > body *::selection{ background-color:white !important; color:black !important; border-color:white !important; } html.skin-theme-clientpref-night > body::-moz-selection html.skin-theme-clientpref-night > body *::-moz-selection{ background-color:white !important; color:black !important; border-color:white !important; } html.skin-theme-clientpref-night > body div#mw-abusefilter-examine-editor div.ace_editor > div.ace_scroller > div.ace_content > div.ace_marker-layer > div.ace_selection, html.skin-theme-clientpref-night > body form#wpFilterForm div.ace_editor > div.ace_scroller > div.ace_content > div.ace_marker-layer > div.ace_selection, html.skin-theme-clientpref-night > body form#mw-abusefilter-editing-form div.ace_editor > div.ace_scroller > div.ace_content > div.ace_marker-layer > div.ace_selection, html.skin-theme-clientpref-night > body form.mw-editform div.ace_editor > div.ace_scroller > div.ace_content > div.ace_marker-layer > div.ace_selection{ background-color:dimgray !important; color:black !important; border-color:white !important; filter:grayscale(100%); } html.skin-theme-clientpref-night div.ui-resizable > div.ace_editor > div.ace_scroller > div.ace_search, html.skin-theme-clientpref-night div.ui-resizable > div.ace_editor > div.ace_scroller > div.ace_search *, html.skin-theme-clientpref-night div.ui-resizable > div.ace_editor > div.ace_scroller > div.ace_search input.ace_search_field{ background-color:black !important; color:white !important; border-color:white !important; } html.skin-theme-clientpref-night > body hr, html.skin-theme-clientpref-night > body > .mw-page-container .cdx-message__icon{ filter:invert(100%) grayscale(100%); } html.skin-theme-clientpref-night > body span.ext-discussiontools-init-replylink-buttons, html.skin-theme-clientpref-night > body span.ext-discussiontools-init-replylink-buttons *{ color:white !important; background-color:black !important; border:0 !important; } html.skin-theme-clientpref-night > body > div.mw-notification-area-overlay .mw-notification-content *{ color:white; background-color:black; border-color:white; } html.skin-theme-clientpref-night > body > div.mw-notification-area-overlay .mw-notification-content .oo-ui-image-success{ background-color:unset; } html.skin-theme-clientpref-night > body > div.mw-notification-area-overlay .mw-notification-content a{ font-weight:bolder; } html.skin-theme-clientpref-night > body span.link > a, html.skin-theme-clientpref-night > body span.link > a:link, html.skin-theme-clientpref-night > body span.link > a:visited, html.skin-theme-clientpref-night > body span.link > a:hover, html.skin-theme-clientpref-night > body span.link > a:active{ color:white; background-color:black; border-color:none; font-weight:bold; } html.skin-theme-clientpref-night > body img.mw-logo-icon{ background-color:white; color:black; border-color:black; } html.skin-theme-clientpref-night > body .cdx-button:enabled.cdx-button--weight-quiet:hover{ background-color: gray; mix-blend-mode:unset; } html.skin-theme-clientpref-night > body .uls-language-actions-close, html.skin-theme-clientpref-night > body .uls-settings-block--with-add-languages, html.skin-theme-clientpref-night > body a.mw-logo img, html.skin-theme-clientpref-night > body span.vector-icon img{ filter:invert(100%) grayscale(100%) !important; } html.skin-theme-clientpref-night > body a.mw-logo img.mw-logo-icon{ background-color:white; } html.skin-theme-clientpref-night > body a.mw-logo img.mw-logo-wordmark{ background-color:black; } html.skin-theme-clientpref-night > body a.mw-logo{ background-color:black; } html.skin-theme-clientpref-night > body span.vector-icon{ background-color:white; } @media screen { html.skin-theme-clientpref-night span.tab > a.skin-invert, html.skin-theme-clientpref-night a.skin-invert.label, html.skin-theme-clientpref-night div.tabs > span > a.skin-invert{ color-scheme:unset !important; filter:none !important; } } @media screen { html.skin-theme-clientpref-night .skin-invert-image img, html.skin-theme-clientpref-night .skin-invert.label::after, html.skin-theme-clientpref-night .skin-invert.current::before, html.skin-theme-clientpref-night .oo-ui-iconElement-icon, html.skin-theme-clientpref-night .oo-ui-indicatorElement-indicator, html.skin-theme-clientpref-night div.tabs > span > a.skin-invert::before, html.skin-theme-clientpref-night label.mw-enhancedchanges-arrow, html.skin-theme-clientpref-night input[type="checkbox"]{ color-scheme: light !important; filter: invert(100%) grayscale(100%) !important; } html.skin-theme-clientpref-night input[type="radio"] + span.cdx-radio__icon, html.skin-theme-clientpref-night input[type="radio"]:hover + span.cdx-radio__icon{ filter:grayscale(100%) !important; } } html.skin-theme-clientpref-night > body div#mw-teleport-target > div.mw-rcfilters-ui-overlay > .oo-ui-widget, html.skin-theme-clientpref-night > body div#mw-teleport-target > div.mw-rcfilters-ui-overlay > .oo-ui-widget *{ filter:invert(0%) grayscale(100%); } div.vector-main-menu > div.mw-portlet > button.uls-settings-trigger, html.skin-theme-clientpref-night > body form.mw-editform:not(img):not(.vector-icon):not(hr):not(br):not(.mw-notification-area-overlay), html.skin-theme-clientpref-night > body form.mw-editform:not(img):not(.vector-icon):not(hr):not(br):not(.mw-notification-area-overlay) *, html.skin-theme-clientpref-night > body form#mw-abusefilter-editing-form, html.skin-theme-clientpref-night > body form#mw-abusefilter-editing-form *, html.skin-theme-clientpref-night > body form#wpFilterForm, html.skin-theme-clientpref-night > body form#wpFilterForm *, html.skin-theme-clientpref-night > body div#mw-abusefilter-examine-editor, html.skin-theme-clientpref-night > body div#mw-abusefilter-examine-editor *, html.skin-theme-clientpref-night > body div#vector-appearance-pinned-container, html.skin-theme-clientpref-night > body div#vector-appearance-pinned-container *, html.skin-theme-clientpref-night > body div#vector-appearance-unpinned-container, html.skin-theme-clientpref-night > body div#vector-appearance-unpinned-container *, html.skin-theme-clientpref-night > body div.mw-rcfilters-container, html.skin-theme-clientpref-night > body div.mw-rcfilters-container *, html.skin-theme-clientpref-night > body div.mw-rcfilters-ui-rcTopSectionWidget-topLinks-top, html.skin-theme-clientpref-night > body div.mw-rcfilters-ui-rcTopSectionWidget-topLinks-top *, html.skin-theme-clientpref-night > body > .mw-page-container span.oo-ui-iconElement-icon, html.skin-theme-clientpref-night > body > .mw-page-container span.oo-ui-iconElement-icon *, html.skin-theme-clientpref-night > body .oo-ui-indicatorElement-indicator, html.skin-theme-clientpref-night > body .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button, html.skin-theme-clientpref-night > body .oo-ui-labelElement-label{ background-color:unset !important; } html.skin-theme-clientpref-night > body .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button{ background-color:black; } html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight > pre{ position:relative; box-shadow:none; } html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight > pre, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight > pre *, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner :not(.mw-highlight) > pre, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner :not(.mw-highlight) > pre *{ background-color:black; color:white; border-color:white; } html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight pre > span.hll, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight pre > span.hll *, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight pre > span.hll a linenos, html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight pre > span a:hover .linenos{ background-color: white; color: black; border-color:white; } html.skin-theme-clientpref-night > body > div.mw-page-container > div.mw-page-container-inner .mw-highlight pre > span a:not(:hover) .linenos{ color:white; background-color:black; border-color:white; } @media not screen{ } html.vector-feature-custom-font-size-clientpref-0{ font-size:14px; } html.vector-feature-custom-font-size-clientpref-1{ font-size:16px; } html.vector-feature-custom-font-size-clientpref-2{ font-size:18px; } 5pe5hol722iekuwkvxwohkyh732yq03 Wikibooks:Moduły 4 60758 538731 538634 2026-04-01T01:45:20Z Persino 2851 538731 wikitext text/x-wiki <noinclude><!-- -->{{StandardowaStronaStart | nagłówek = {{Rozdział|Pomoc Wikibooks|Mechanizm MediaWiki - Moduły}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Rozdział|Koniec}} }}</noinclude>{{Spis treści}} Strona przedstawia technologię modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, a właściwie spis poszczególnych rozdziałów. Moduły wywoływa się przez, np. formę: {{m|'''Nazwa modułu'''|'''Nazwa funkcji'''}}, lub przez: {{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|Parametr 1|Parametr 2|...}}, albo: {{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|Parametr 1 {{=}} Wartość 1|Parametr 2 {{=}} Wartość 2|...}}, lub w postaci mieszanej: {{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|...|Parametr n {{=}} Wartość n|...|Parametr m|...}}, itp.. Parametry podobnie się pisze w wikikodzie i wywołuje jak szablony, tylko z tą różnicą, że w nazwie szablonu jest na samym początku: {{Code|#invoke:}}, co po nim następuje w niej nazwa modułu bez przedrostka {{Code|{{Np|Module|link=tak}}:}}, a pierwszy parametr, który nie jest liczony, jako zmienna, tylko następna z kolei, jest nazwą funkcji w tablicy eksportu. Wtedy jest wywoływany moduł, a w niej ściśle określona funkcja z parametrami jej ramki. Parametrami funkcji też mogą być parametry szablonu rodzica, w której wywoływana jest ta ona. == Moduły podstawowe == {{Kolumny|2| {{SpisTreści|Parametry}} {{SpisTreści|Html}} {{SpisTreści|Książkowe}} {{SpisTreści|Nazwy}} {{SpisTreści|Nazwy - Tom I}} {{SpisTreści|Nazwy - Tom II}} {{SpisTreści|Nazwy - Tom III}} {{SpisTreści|Nazwy - Tom IV}} {{SpisTreści|Nazwy/Np}} {{SpisTreści|Pudełko}} {{SpisTreści|Ramka}} {{SpisTreści|Specjalne}} {{SpisTreści|StronicowyParser}} {{SpisTreści|Szeregi}} {{SpisTreści|Szablonowe}} {{SpisTreści|Techniczne}} {{SpisTreści|Wiki}} }} == Moduły standardowe == {{Kolumny|2| {{SpisTreści|Kategorie}} {{SpisTreści|Linki}} {{SpisTreści|Łatki}} {{SpisTreści|Skrót}} {{SpisTreści|Strony}} {{SpisTreści|Sprawdź}} }} == Moduły specjalistyczne == {{Kolumny|2| {{SpisTreści|Tabela}} {{SpisTreści|Sekcja referencyjna}} {{SpisTreści|Plik}} {{SpisTreści|Licencja}} {{SpisTreści|Przypisy}} {{SpisTreści|Dopracować}} }} {{BrClear}} <noinclude><!-- -->{{StandardowaStronaKoniec}}<!-- -->{{Kategorie | Opisy funkcji, w Lua w Scribunto, w modułach | sortuj spacją 1 = tak | Pomoc - Problemy wywołań mechanizmu MediaWiki }}<!-- --></noinclude> n3sy54ninn2vkvigzh7x98gwugs7ucs Szablon:StronaStart/szablon-mobilne.css 10 61004 538690 533321 2026-03-31T20:15:36Z Persino 2851 538690 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ tm69yl13fr62nyhv3511dx7tez68aa9 538692 538690 2026-03-31T20:27:31Z Persino 2851 538692 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a{ word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ 5cdr4ogpxhbd09veoimfqbk4usfqa3f 538693 538692 2026-03-31T20:38:24Z Persino 2851 538693 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a{ hyphens:auto !important; overflow-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ fc9j90sgea3raawpxmylt2it7u47msp 538694 538693 2026-03-31T21:02:00Z Persino 2851 538694 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a.mw-selflink-fragment, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a.mw-selflink-fragment{ hyphens:auto !important; overflow-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ dzmc8r68yf4aq5qi9asyetof34asxaa 538695 538694 2026-03-31T21:02:57Z Persino 2851 538695 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a.mw-selflink-fragment, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a.mw-selflink-fragment{ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ brwajjr5gohj453hdss4es5qktrpa1h 538696 538695 2026-03-31T21:13:09Z Persino 2851 538696 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a[title*=" "], .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a[title*=" "]{ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ hz1zbu3uc5n6smp32e98zchvju4bmqq 538697 538696 2026-03-31T21:15:25Z Persino 2851 538697 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a:not([title*=" "]), .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a:not([title*=" "]){ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ 0t9e11n0swa9476t4qx6t7k35wj9nyt 538698 538697 2026-03-31T21:19:45Z Persino 2851 538698 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a[href]:not([href*="_"]), .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a[href]:not([href*="_"]){ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ hdoopim20onxkaglbkicyeoxt502duf 538699 538698 2026-03-31T21:24:58Z Persino 2851 538699 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ tm69yl13fr62nyhv3511dx7tez68aa9 538705 538699 2026-03-31T21:48:10Z Persino 2851 538705 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona a.bez-spacji, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona a.bez-spacji{ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ b3hi6ytd44han9jzxx00o0di9wg6t10 538706 538705 2026-03-31T21:50:48Z Persino 2851 538706 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona div.mw-highlight > pre, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona span.bez-spacji > a, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona span.bez-spacji > a{ word-wrap:break-word !important; word-break:break-all !important; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ sxnbb3alli27ti3lip3nh6p9ohgk63s 538712 538706 2026-03-31T22:35:04Z Persino 2851 538712 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ display:inline; vertical-align:middle; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ tm69yl13fr62nyhv3511dx7tez68aa9 538717 538712 2026-03-31T23:19:31Z Persino 2851 538717 sanitized-css text/css @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible).plainlinks, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks{ display:block; width:100% !important; box-sizing:border-box !important; margin:0!important; margin-bottom:0.3125rem !important; } .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible), .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr{ display:block; width:100% !important; box-sizing:border-box !important; margin:0 !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ display:block; box-sizing:border-box !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > caption, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > th, /**/ .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .strona_subst div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .strona_subst td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .strona_subst div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible):not(.plainlinks) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.noprint > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany td > table:not(.bez-mobilne).collapsible:only-child > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany div.plainlinks > table:not(.bez-mobilne):not(.collapsible) > tbody > tr > td{ width:calc( 100% - 0.25rem) !important; margin:0.125rem !important; } .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .strona_subst table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .strona_start.mobilne .ciało_strona .siatka-mobilna table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td, /**/ .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).noprint > tbody > tr > td, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > caption, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > th, .siatka-mobilna .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.bez-mobilne):not(.collapsible).plainlinks > tbody > tr > td{ width:100% !important; margin:0 !important; } } .strona_subst .elastyczny2 > table, .strona_start.mobilne .ciało_strona .elastyczny2 > table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .elastyczny2 > table{ margin:0; } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ max-width:100%; overflow-x:auto; overflow-y:hidden; white-space:normal; } .strona_start.niekolumnowy > .strona > div > .ciało_kontener > .ciało_strona code, .strona_start.kolumnowy > .strona_nadrzędna > .główna_strona > .strona_środkowa > .strona > div > .ciało_kontener > .ciało_strona code{ vertical-align:middle; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100vw; } } @media all and (max-width:745px), all and (max-device-width: 745px), all and (max-device-height: 745px){ .strona_start.mobilne table, .rozdział_książki table, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table, .strona_start.mobilne table > caption, .rozdział_książki table > caption, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > caption, .strona_start.mobilne table > footer, .rozdział_książki table > footer, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > footer, table.tabela-mobilna, table.tabela-mobilna > caption, table.tabela-mobilna > footer{ overflow:auto !important; display:block !important; max-width:100vw !important; width:100% !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box !important; word-wrap:initial; word-break:initial; hyphens:initial; background:transparent !important; } .strona_start.mobilne table > tbody, .rozdział_książki table > tbody, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tbody, table.tabela-mobilna > tbody, .strona_start.mobilne table > thead, .rozdział_książki table > theat, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > theat, table.tabela-mobilna > theat, .strona_start.mobilne table > tfoot, .rozdział_książki table > tfoot, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table > tfoot, table.tabela-mobilna > tfoot{ display:table; width:100%; border-collapse: collapse; box-sizing:border-box; } .strona_start.mobilne table[border], .rozdział_książki table[border], .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table[border], .strona_start.mobilne table.wikitable, .rozdział_książki table.wikitable, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.wikitable, table.tabela-mobilna[border], table.tabela-mobilna.wikitable{ border:0 !important; } .strona_start.mobilne table.mw-overflow-x.mw-scrollbar-overflow-x, .rozdział_książki table.mw-verflow-x.mw-scrollbar-overflow-x, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-x.mw-scrollbar-overflow-x, table.tabela-mobilna.mw-overflow-x.mw-scrollbar-overflow-x{ padding-bottom:0.3125rem; } .strona_start.mobilne table.mw-overflow-y.mw-scrollbar-overflow-y, .rozdział_książki table.mw-verflow-y.mw-scrollbar-overflow-y, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table.mw-overflow-y.mw-scrollbar-overflow-y, table.tabela-mobilna.mw-overflow-y.mw-scrollbar-overflow-y{ padding-right:0.3125rem; } } .klasa_książki, .klasa_nagłówka, .strona_subst, .strona_start.mobilne, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany{ max-width:100%; } .strona_start.mobilne .mwe-math-element, .strona_start.mobilne figure, .strona_start.mobilne table:not(.collapsible), .strona_start.mobilne center, .rozdział_książki .mwe-math-element, .rozdział_książki figure, .rozdział_książki table:not(.collapsible), .rozdział_książki center, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany figure, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany table:not(.collapsible), .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany center{ overflow:auto; max-width:100%; box-sizing:border-box; } .strona_start.mobilne .ciało_strona .mwe-math-element, .rozdział_książki > .strona_subst .mwe-math-element, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element{ display:inline-block; vertical-align: bottom; } .strona_start.mobilne .ciało_strona .mwe-math-element img.mwe-math-fallback-image-inline, .rozdział_książki > .strona_subst .mwe-math-element img.mwe-math-fallback-image-inline, .rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany .mwe-math-element img.mwe-math-fallback-image-inline{ margin:0 !important; } /*{{Kategoria|Szablony - arkusze stylów/StronaStart}}*/ 4sy476zz86oj8p850f095gkkl8r0bdn Wikipedysta:Persino/brudnopis11 2 62939 538710 538142 2026-03-31T22:08:20Z Persino 2851 538710 wikitext text/x-wiki {{Nowiki|{{Link wewnętrzny|strona=Pomoc:Spis treści|uri=tak}}}} ---- {{Nowiki|{{WydobądźLinki|{{lg|Pomoc%3ASpis%20tre%C5%9Bci|uri=tak}}}}}} ---- {{lg|Pomoc%3ASpis%20tre%C5%9Bci|uri=tak}} ---- {{WydobądźLinki|{{lg|Pomoc%3ASpis%20tre%C5%9Bci|uri=tak}}}} {{PobierzNumerArtykułu|Muzyka|dane=3|poziomowo=tak|nagłówek=tak|bez automatu=|nazwa przestrzeni nazw=(main)|nazwa jednostki=Estoński/Muzyka}} --- {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Szablony edycji - błędy wywołań}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Strony ze złymi uchwytami do obiektów}}}} ---- {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Brak licencji, na stronach głównych, publikacji}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Brakujące spisy treści, dołączonych do stron, stron w innych książkach}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Strony z dołączonymi innymi stronami, w książkach, z obiektami ze złymi uchwytami}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Strony z wypowiedzeniami ze złymi uchwytami}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Strony ze złymi uchwytami do nagłówków}}}} {{Nowiki|{{Kategoria|Szablony, tworzące linki, do sprawdzenia|nazwa jednostki=Artykusły2 dla dzieci2, ze złymi uchwytami do nagłówków}}}} {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}} 1mjcmny73unrkhdlvzoqyjr2zxcr88y Szablon:Pre/styles.css 10 62996 538722 538318 2026-04-01T00:00:28Z Persino 2851 538722 sanitized-css text/css pre.pre_style{ display:block; max-width:100%; box-sizing:border-box; overflow-x:auto; overflow-y:hidden; word-wrap:break-word; word-break:break-word; hyphens:auto; white-space:pre-wrap; margin-top:0.5em !important; margin-bottom:0.5em !important; } @media all and (max-width:745px), all and (max-device-width:745px){ pre.pre_style{ margin-top:0.3125em !important; margin-bottom:0.3125em !important; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 2ub1heaf3ig60u34t6gbq0jjfgbpju9 538730 538722 2026-04-01T00:42:36Z Persino 2851 538730 sanitized-css text/css pre.pre_style{ display:block; max-width:100%; box-sizing:border-box; overflow-x:auto; overflow-y:hidden; word-wrap:break-word; word-break:break-word; hyphens:auto; white-space:pre-wrap; background-color: #f8f9fa; color: #000; border: 1px solid #eaecf0; margin-top:0.5em !important; margin-bottom:0.5em !important; } @media all and (max-width:745px), all and (max-device-width:745px){ pre.pre_style{ margin-top:0.3125em !important; margin-bottom:0.3125em !important; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ np99w9gyfv4y1tttm13cgfvvvo8s7om Wikibooks:Moduły/Ramka 4 63231 538650 535352 2026-03-31T12:44:49Z Persino 2851 538650 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Ramka}}|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 ramka_modul=require("Module:Ramka"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == {{Code|ParserBlokowy()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}} tylko w module {{Code|{{ld2|Ramka}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function ParserBlokowy(frame, co_ma_wywolac)...end; </syntaxhighlight> Funkcja przyjmuje tablicę ramki tablicy transportu funkcji i drugi parametr, który mówi, czy ma uwzględniać dany szablon, jeżeli {{Tt|0}}, funkcję modułu, jeżeli {{Tt|1}}, i funkcję parsera, jeżeli: {{Tt|2}}, a {{Tt|3}} i dalej, to już dany szablon. Tablica ramki może przyjmować ze strony ramki dziecka szablonu, jak i parametry rodzica szablonu, te ramki są: * Funkcja przyjmuje parametry podstawowe, które piszemy w postaci: ** {{Code|Nazwa}} - jest to nazwa szablonu, modułu, czy parsera, ** {{Code|bez argumentów rodzica}} - tablica parametrów oddzielonych średnikami, których szablon nie przyjmuje,nawet jeżeli one są, ** {{Code|nazwa szablonu rodzica}} - jest to zmienna przechowująca nazwę szablonu rodzica ramki dziecka, ** {{Code|bez argumentów nienazwanych rodzica}} - szablon w ramce nie przyjmuje parametrów nienazwanych podanych w rodzicu ramki, ** {{Code|potomek}} - zmienna mówiąca, że to jest potomek rodzica ramki, jeżeli nie jest podany parametr {{Code|nie potomek}} - dodane przez tę funkcję, ** {{Code|nie potomek}} - zmienna mówiąca, że to nie jest potomek szablonu, ** {{Code|bez argumentów szablonu}} - zmienna oddzielonych średnikami parametrów, których nie wolno uwzględniać w walidacji błędów w {{m|Sprawdź|Parametry}}, ** {{Code|bez dodatkowych sprawdzeń}} - nie jest uruchamiana walidacja parametrów szablonu rodzica, ** {{Code|parametry rodzica}} - zmienna przedstawiająca parametry rodzica przekazane do ramki: {{m|Sprawdź|Parametry}} - dodane przez tę funkcję, ** {{Code|zmienna z parametrami rodzica}} - parametr mówiący, czy ma tworzyć zmienne z parametrami rodzica, a jeżeli nie jest on, z zadnych z jego potomków podany, to zmienna ta z parametrami jest przekazywana na kolejnego przodka, ** {{Code|zmienna z argumentami ramki}} - zmienna mówiąca, czy mają być tworzone parametry ramki,które nie są walidowane przez walidację błędów w {{m|Sprawdź|Parametry}}, wtedy te parametry rodzica nie mogą być podane, przy pomocy tej zmiennej zmienne z: {{Code|bez argumentów szablonu}} są łączone z parametrami ramki, ** {{Code|zmienna z nazwą szablonu rodzica}} - parametr, czy ma tworzyć zmienną: {{Code|nazwa szablonu rodzica}}, ** {{Code|parametry funkcji modułu pudełek}} - czy do funkcji mają wchodzić niepodstawowe nienazwane parametry modułu pudełek, a nie inne zmienne, ** {{Code|parametry podstawowe funkcji modułu pudełek}} - czy do funkcji mają wchodzić podstawowe parametry funkcji modułu pudełek, a nie inne zmienne, ** {{Code|usuń z parametrów ramki}} - parametr przedstawiający zmienne oddzielone średnikami, których parametrów ramki ma nie uwzględniać. * {{Code|Funkcja}} - nazwa funkcji w module, który ma wywołać, w przypadku, gdy parametr funkcji {{sr|#ParserBlokowy()|p=Ramka}} ma wartość {{Tt|1}}, czyli wywołujemy funkcję {{sr|#p["Moduł"]()|p=Ramka}}. Funkcja uruchamia szablon z parametrami rodzica ramki bez parametrów opisanych zmienną: {{Code|bez argumentów szablonu}}, i bez parametrów ramki minus zmienne opisane przez: {{Code|usuń z parametrów ramki}} dla wartości {{Tt|0}}, funkcję modułu ramki dla wartości {{Tt|1}}, funkcję parsera dla {{Tt|2}}, i {{Tt|3}} i dalej funkcję szablonu. Za pomocą tej funkcji możemy wielopoziomowo wywoływać funkcje przekazując parametry od najwyższego poziomu do najniższego. Ta funkcję jako do budowy szablonów, definiując też w jednym miejscu walidację błędów, dla przykładu wykorzystano ją w: {{s|Wzór}}, {{s|Wzór2}}, {{s|CentrujWzór}},{{s|CentrujWzór2}}, i inne, czyli uruchamianie szablonów, a uruchamianie funkcji modułu, w tym funkcji {{m|Cytuj|custom}} w szablonie {{s|PrzypisStrona}}. Przykładem wywołania szablonu jest, która jest w szablonie: {{s|Wzór}}, w którym jest wywoływany inny szablon, tym razem silnik tego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Wzór/silnik|pozycja numeracji=po prawej|wyrównanie={{{wyrównanie|lewy}}}|bez argumentów szablonu=pozycja numeracji|zmienna z parametrami rodzica=tak}} </syntaxhighlight> A przykład wywołania funkcji modułu, która jest w: {{s|PrzypisStrona}}, w którym jest wywoływany funkcja modułu {{m|Cytuj|custom}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Moduł|Nazwa=Cytuj|Funkcja=custom | url = {{{adres}}}/{{{1|{{{podstrona}}}}}} | tytuł = {{{2|{{{nazwa}}}}}} | praca = {{lz | s = {{Jeśli niepuste|{{{serwis|}}}|{{Dopasuj|ciąg={{{adres}}}|wzór=^(%a+:%/%/[^%/]+)}}}} | n = {{Dopasuj|ciąg={{Jeśli niepuste|{{{serwis|}}}|{{{adres}}}}}|wzór=^%a+:%/%/([^%/]+)}} }} | data = {{#if:{{{data|}}}|{{Czas|Y-m-j|{{{data}}}}}}} | data dostępu = {{Czas|j.m.Y|{{{data dostępu|}}}}} }} </syntaxhighlight> == {{Code|BudowaSzereguZDanych()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}} tylko w module {{Code|{{ld2|Ramka}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum)...end; </syntaxhighlight> Funkcja posiada następujące parametry podane w tablicy ramki dla funkcji zwracanej tablicy transportu: * {{Code|akapit}} - jeśli niepusta, to ona definiuje akapit ze znaków: {{Code|\n\n}}, * {{Code|przecinek}}- drukuje przecinek, jeśli posiada wartość niepustą, ten przecinek jest w postaci: {{Code|", "}}, został on specjalnie objęty w cudzysłowy, aby zilustrować, że po przzecinku znajduje się spacja, * {{Code|nowa linia}} - w przeciwieństwo do {{Code|akapit}}, pisze jedną nową linię, a nie dwie, jako: {{Code|\n}}, * {{Code|wyliczanka}} - wylicza elementy z przecinkami, stawiając przed ostatnim elementem zamiast jego wyraz wyliczania {{Code|i}}, * {{Code|początek}} - mówi, że na początku musi znajdować się przecinek, * {{Code|myślnik}} - mówi, że jeśli nie ma początku przecinka, to stawiany jest myślnik, używany zamiast {{Code|poczatek}}, * {{Code|warunkowe}} - instrukcje wikikodu niezawierające we wnętrzu klamerek zostaną rozwinięte, ** {{Code|parametr}} - mówi w derektywach, jeśli niepusty, że derektywy muszą przyjmować wartość w postaci pseudoszablonów, w przeciwnym wypadku jego odpowiednika znaku, ** Funkcja w tym warunku zwraca ciąg znaków rozwiniętego warunku. Funkcja posiada też mikroszablony: * {{Code|<nowiki>{{min}}</nowiki>}} - minimalna wartość szeregu zmiennych, * {{Code|<nowiki>{{max}}</nowiki>}} - a tutaj ich maksymalna. Te dwie zmienne są podstawiane do uzyskanego ciągu. Uzyskany tekst jest łączony za pomocą akapitu,a jak nie, to nowych linii, w przeciwnym wypadku jest łączony ciągiem pustym. Deklaracja, a zarazem definicja funkcji wygląda następująco: <syntaxhighlight lang="lua"> local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum) ... end; </syntaxhighlight> * {{Code|frame}} - tablica ramki w tablica transportu funkcji {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, * {{Code|tab_lancuch}} - jest to tablica uzyskanych z innych funkcji wikikodów w tym module, * {{Code|minimum}} - jak powyżej: {{Code|<nowiki>{{min}}</nowiki>}}, * {{Code|maksimum}} - jak powyżej: {{Code|<nowiki>{{max}}</nowiki>}}. Funkcja zwraca rozwinięty, co do instrukcji warunkowych bez wewnętrznych klamerek, połączonych podanych łańcuchów odpowiednio w postaci tablicy, do odpowiedniego szeregu, pod którym jest ukryty wikikod. == {{Code|p.InstrukcjeWarunkowe()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. {{Tabela|klasa=wikitable tekst-centruj-td|pozycja=prawo|liczba wierszy=12|liczba kolumn=3 | nagłówek 1 = Derektywa | nagłówek 2 = Odpowiednik znakowych | nagłówek 3 = Pseudoszablon | komórka 1_1 = __!__ | komórka 1_2 = &#124; | komórka 1_3 = {{s|!}} | komórka 2_1 = __!!__ | komórka 2_2 = &#124;&#124; | komórka 2_3 = {{s|!!}} | komórka 3_1 = __(__ | komórka 3_2 = &#123; | komórka 3_3 = {{s|(}} | komórka 4_1 = __((__ | komórka 4_2 = &#123;&#123; | komórka 4_3 = {{s|((}} | komórka 5_1 = __(((__ | komórka 5_2 = &#123;&#123;&#123; | komórka 5_3 = {{s|(((}} | komórka 6_1 = __)__ | komórka 6_2 = &#125; | komórka 6_3 = {{s|)}} | komórka 7_1 = __))__ | komórka 7_2 = &#125;&#125; | komórka 7_3 = {{s|))}} | komórka 8_1 = __)))__ | komórka 8_2 = &#125;&#125;&#125; | komórka 8_3 = {{s|)))}} | komórka 9_1 = __!(__ | komórka 9_2 = &#91; | komórka 9_3 = {{s|!(}} | komórka 10_1 = __!((__ | komórka 10_2 = &#91;&#91; | komórka 10_3 = {{s|!((}} | komórka 11_1 = __)!__ | komórka 11_2 = &#93; | komórka 11_3 = {{s|)!}} | komórka 12_1 = __))!__ | komórka 12_2 = &#93;&#93; | komórka 12_3 = {{s|))!}} }} Definicja częściowa tego kodu jest w postaci: <syntaxhighlight lang="lua"> p.InstrukcjeWarunkowe = function(ciag,derektywy_specjalne,derektywy_parametrowe)...end; </syntaxhighlight> * {{Code|ciag}} - podany ciąg do rozwinięcia z instrukcji warunkowych wewnątrz nie posiadający klamewrek, * {{Code|derektywy_specjalne}} - używa do zastępowania specjalnych derektyw, podane poniżej, * {{Code|derektywy_parametrowe}} - czy używać pseudoszablonów zamiast ich odpowiedników znakowych. Obsługiwane instrukcje warunkowe: {{Code|{{s|#if:[^{}]*}}}}, {{Code|{{s|#ifeq:[^{}]*}}}}, {{Code|{{s|#switch:[^{}]*}}}}, {{Code|{{s|#ifexpr:[^{}]*}}}}, {{Code|{{s|#expr:[^{}]*}}}}, {{Code|{{s|#iferror:[^{}]*}}}} i {{Code|{{s|#iferror:[^{}]*}}}}. Ta funkcja jest używana przez funkcję: {{Code|{{sr|#BudowaSzereguZDanych()|p=Ramka}}}}, poprzez funkcję: {{Code|{{sr|#p.Powtarzaj()|p=Ramka}}}}. Przykłady użycia pośrednio przez tą ostatnią funkcję: ona jest użyta w walidacji błędów {{m|Sprawdź|Parametry}} poprzez: {{m|Ramka|Powtarzaj|...|warunkowe{{=}}tak|...}}, na przykładzie w kodzie derektywy: {{Code|__!__}}. == {{Code|p.RozpakujArgumenty()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p.RozpakujArgumenty = function(zmienna_z_argumentami)...end; </syntaxhighlight> Funkcja przyjmuje jeden parametr ze zmiennymi oddzielonych średnikami, je rozpakowuje wyjmując z pól pomiędzy średnikami zmienne, i układa je w tablicy, która jest zwaracana jako parametr, te parametry mogą mięć mikroszablony, które sa zastępowane odpowiednikami znakowymi. Jedynym tego przykładem jest mikrofunkcja {{Code|<nowiki>{{+}}</nowiki>}}, ktora jest zamieniana na średnik. == {{Code|p.PakujParametry()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Funkcja pakuje parametry tablicy {{lpg|Lua}} do tablicy: {{Code|JSON}}, przy pomocy funkcji, którego wynik jest zwracany do tej funkcji: <syntaxhighlight lang="lua"> p.PakujParametry = function(args) return mw.text.jsonEncode(args,mw.text.JSON_PRESERVE_KEYS); end; </syntaxhighlight> Ten szablon nazywa parametry jakby nienazwane w tablicy {{Code|JSON}} (tutaj numerowanie jest od zera) z tablicy {{lpg|Lua}} (tutaj od jedynki), do tablicy nazwanej, jak to robi się w {{Lpr|Lua|Scribunto}}. == {{Code|p.RozpakujParametry()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Funkcja rozpakowuje parametry z tablicy: {{Code|JSON}}, do tablicy {{lpg|Lua}}, przy pomocy funkcji, którego wynik jest zwracany do tej funkcji: <syntaxhighlight lang="lua"> p.RozpakujParametry = function (zmienna_z_parametrami) return mw.text.jsonDecode(args,mw.text.JSON_PRESERVE_KEYS); end; </syntaxhighlight> Ten szablon nazywa parametry nienazwane w tablicy {{lpg|Lua}} (tutaj od jedynki) z tablicy {{Code|JSON}} (tutaj numerowanie jest od zera), do tablicy nienazwanej z nazwanej, jak to robi się w {{Lpr|Lua|Scribunto}}. == {{Code|p["Rozwiń"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["Rozwiń"] = function(frame)...end; </syntaxhighlight> Szablon rozwija wikikod podany w zmiennej {{Code|1}}. * Szablon jest użyty w szablonie: {{s|Wybrane grupy książek}}, która generuje układ wielokolumnowy układ bloków ramkowych przy pomocy funkcji: {{s|Blok ramkowy}} i {{s|Blok ramkowy/Zamknij}}, * Szablon również jest użyty w szablonach: {{s|Osobny artykuł/silnik}}, {{s|Kategoria główna/silnik}}, {{s|Spójrz też/silnik}}, itd.. Przykład wywołania funkcji: * {{Code|{{m|Ramka|Rozwiń|1{{=}}<wikikod>}}}} - funkcja rozwija podany wikikod podany w zmiennej {{Code|1}}. Kod tej funkcji bibliotecznej w tym module, tzn.: {{Ld2|Ramka}}, jest: <syntaxhighlight lang="lua"> p["Rozwiń"] = function(frame) return frame:getParent():preprocess(frame.args[1]); end; </syntaxhighlight> == {{Code|p.Log(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Log = function(frame)...end; </syntaxhighlight> Szablon wysyła logi do konsoli {{Code|MediaWiki}} w postaci tekstu: ukryty pod zmienna: {{Code|log}}, i ewentualnie zwraca ten tekst, jeżeli zmienna: {{Code|wikitext}}, przyjmuje wartość niepustą, lub jest niepodana. Przykłady użycia funkcji: * {{Code|{{m|Ramka|Log|log{{=}}<tekst>|wikitext{{=}}tak}}}}- tutaj funkcja (ramka) wysyła do konsoli tekst ukryty pod zmienną: {{Parametr|log|<tekst>}}, i jednocześnie zwraca jej wartość. Kod tej funkcji bibliotecznej w tym module, tzn.: {{Ld2|Ramka}}, jest: <syntaxhighlight lang="lua"> p.Log = function(frame) local parametry_modul=require("Module:Parametry"); local czy_zwracac=parametry_modul.CzyTak(frame.args["wikitext"]); local wikitekst=frame.args["log"]; mw.log(wikitekst); return (czy_zwracac and wikitekst or ""); end; </syntaxhighlight> == {{Code|p.Szablon(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|0}} symbolizującego rozwijanie szablonu: <syntaxhighlight lang="lua"> p.Szablon = function(frame) return ParserBlokowy(frame,0); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p["Moduł"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|1}} symbolizującego rozwijanie funkcji modułu ramki: <syntaxhighlight lang="lua"> p["Moduł"] = function(frame) return ParserBlokowy(frame,1); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p.Parser(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|2}} symbolizującego rozwijanie funkcji parsera: <syntaxhighlight lang="lua"> p.Parser = function(frame) return ParserBlokowy(frame,2); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p.Q(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Q =function(frame)...end; </syntaxhighlight> Szablon {{s|Q}} przyjmuje tylko jeden parametr {{Parametr|1}}, którą jest nazwa niepełna szablonu, modułu, czy kategorii. Szablon {{s|T}} podobnie jak poprzedni szablon, tylko dodatkowo dopuszcza parametry szablonu, którego uruchamia z nimi szablon (funkcja) o nazwie uzyskanej z funkcji {{m|Ramka|N}}. Szablon {{s|Q}} parametry nienazwane większe od jeden, ale nie pierwszy parametr, jego numer zmniejsza o jeden, a inne pozostawia je w takiej formie, jakim są (nie pierwszy, który nie jest wliczany do parametrów szablonu). W ten sposób wywołujemy szablon podany jako pierwszy parametr tego szablonu z tymi tak uzyskanymi parametrami. === Przykłady użycia funkcji {{s|Ramka|Q}}, a zarazem szablonu {{s|Q}} === * {{Code|{{s|Q|Unicode-c|wstecz{{=}}13|dalej{{=}}15}}}} → {{OverflowWiersz|{{T|Unicode-c|wstecz=13|dalej=15}}}} == {{Code|p.N(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.N=function(frame)...end; </syntaxhighlight> Szablon {{s|N}}, a zarazem funkcja {{s|Ramka|N}} ze strony parametrów ramki, przyjmuje tylko jeden parametr {{Parametr|1}}, którą jest nazwa niepełna szablonu, modułu, czy kategorii. Szablon {{Code|{{s|N|<nazwa strony>|p{{=}}{{!(}}0{{!}}1{{!}}2{{)!}}|n{{=}}tak}}}} przyjmuje parametry oznaczające: * {{Code|p}}, tzn. {{Parametr|p|0}} lub niepodana, oznacza przestrzeń szablonu, {{Parametr|p|1}} przestrzeń modułu i {{Parametr|p|2}} przestrzeń kategorii. * {{Code|n}}, gdy pusta lub niepodana oznacza pełną nazwę strony, a gdy jest niepusta, tylko nazwę strony. === Przykłady użycia funkcji {{m|Ramka|N}} i szablonu {{s|N}} === * {{Code|{{s|N|Unicode-c}}}} → {{Code|{{N|Unicode-c}}}}, {{Code|{{s|N|Unicode-c|n{{=}}tak}}}} → {{Code|{{N|Unicode-c|n=tak}}}} * {{Code|{{s|N|Unicode-c|p{{=}}0}}}} → {{Code|{{N|Unicode-c|p=0}}}}, {{Code|{{s|N|Unicode-c|p{{=}}0|n{{=}}tak}}}} → {{Code|{{N|Unicode-c|p=0|n=tak}}}} * {{Code|{{s|N|Zbiór zadań maturalnych|p{{=}}1}}}} → {{Code|{{N|Zbiór zadań maturalnych|p=1}}}}, {{Code|{{s|N|Zbiór zadań maturalnych|p{{=}}1|n{{=}}tak}}}} → {{Code|{{N|Zbiór zadań maturalnych|p=1|n=tak}}}} * {{Code|{{s|N|Zbiór zadań maturalnych/Szablony|p{{=}}2}}}} → {{Code|{{N|Zbiór zadań maturalnych/Szablony|p=2}}}}, {{Code|{{s|N|Zbiór zadań maturalnych/Szablony|p{{=}}2|n{{=}}tak}}}} → {{Code|{{N|Zbiór zadań maturalnych/Szablony|p=2|n=tak}}}} == {{Code|p.A(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.A=function(frame)...end; </syntaxhighlight> Szablon {{s|A}}, a zarazem funkcja: {{m|Ramka|A}}, z nazwy szablony (bez przestrzeni nazw) usuwa przedrostek {{Code|Książka:}}. Szablon {{Code|{{s|Q|<nazwa strony>|p{{=}}{{!(}}0{{!}}1{{!}}2{{)!}}}}}} przyjmuje parametry oznaczające: * {{Code|p}}, gdy pusta lub niepodana oznacza pełną nazwę strony, a gdy jest niepusta, tylko nazwę strony. === Przykład wykorzystania szablonu {{s|A}}, a zarazem funkcji funkcji {{m|Ramka|A}} === * {{Code|{{s|A|{{N|Unicode-c|n=tak}}}}}} → {{Code|{{A|{{N|Unicode-c|n=tak}}}}}}, {{Code|{{s|A|{{N|Unicode-c}}|p{{=}}tak}}}} → {{Code|{{A|{{N|Unicode-c}}|p=tak}}}} == {{Code|p.Powtarzaj(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Powtarzaj = function(frame)...end; </syntaxhighlight> Funkcja może przyjmować tylko parametry nienazwane, tylko nazwane, lub nienazwane i nazwane. Funkcja jako podany parametr pierwszy: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Powtarzaj|1=<wikikod>}} </syntaxhighlight> iteruje po podanych parametrach, jako parametry szablonu w zależności od parametrów ramki, zastępując pewne wielkości. Te wielkości to: * {{Code|{{((}}_{{))}}}} (w nawiasach klamrowych podwójnych jest jeden dolny myślnik) - parametr numerowany przyjmujący wartość numerowaną od więcej od {{Code|1}} lub {{Code|1}}, * {{Code|{{((}}__{{))}}}} (w nawiasach klamrowych podwójnych są dwa dolne myślniki) - parametr numerowany przyjmujący wartość numerowaną od więcej od {{Code|1}} albo {{Code|1}} lub ciąg pusty (wtedy tutaj dla jedynki, jeżeli zmienna: {{Code|<zmienna> 1}} lub {{Code|<zmienna>1}}, istnieje, a teraz dla ciągu pustego, jeżeli zmienna {{Code|<zmienna>}} istnieje), one są podane w zmiennych parametrach szablonach, jeżeli w nich wywołana jest ta ramka wywołującą tę funkcję. Parametrem określającym, że brane są pod lupę parametry nazwane i nienazwane, jest zmienna {{Code|różne}}, która wtedy ma wskazywać na wartość niepustą. Najważniejsze parametry, które są to opcjonalne, to są: * {{Code|start}} - liczba, która wskazuje początek liczenia - domyślna wartość to {{Code|1}}, * {{Code|koniec}} - liczba, która wskazuje koniec liczenia. Elementy w {{Code|parametry}} mogą modyfikować odpowiednio te parametry podane zaraz powyżej, ale najpierw parametr wskazujący koniec liczenia musi być policzony w pierwszej fazie, a jeżeli nie ma parametrów nazwanych, wtedy liczy się maksimum numeracyjne parametrów numerowanych, a jeżeli są nazwane, a jeżeli {{Code|różne}} nie jest niepuste, to się liczy maksimum parametrów nazwanych, a w przeciwnym wypadku mamy w zależności od parametru: {{Code|maksimum numeracyjne}}, jeżeli niepusty, to liczy się maksimum numeracyjne, w przeciwnie maksimum z maksimum numeracyjnego i parametrów nazwanych (który zależy od parametru przesunięcia dla danego parametru i parametrów ogólnie, wspólny dla wszystkich parametrów - wyjaśnienie poniżej). To maksimum parametrów nazwanych, dla jakieś podstawy parametrów, jest pomijane, gdy {{Code|dodatkowe}}, która jest zestawem podstaw parametrów oddzielonych średnikami, jest właśnie podany ten parametr w nim. Przykładem jego jest: {{Pre|{{Parametr|dodatkowe|<zmienna 1>;<zmienna 2>;<zmienna 3>}}}} Gdzie zamiast zmiennych {{Code|<zmienna 1>,...}} są pewne nazwy baz parametrów nazwowych bez numerka na samym końcu i ewentualnie spacji. Funkcja przyjmuje ważny parametr {{Code|parametry}} dla parametrów specjalnie nazwanych. Elementy w nim są oddzielone średnikami dla każdej zmiennej z osobna, a dla danej zmiennej zmienne są przedzielone przecinkami. Na początku tego jest opcjonalny element naturalny wspólny dla wszystkich zmiennych oddzielonych od pozostałych elementów średnikiem, jeżeli istnieją. Nie licząc wspólnego elementu dla wszystkich parametrów, to dla danej zmiennej liczba maksymalna elementów podanych po kolei jest {{Code|5}}. Dla danej zmiennej elementy oddzielone przecinkami piszemy w formie: * element pierwszy, to jest parametr, jeżeli niepusty, określający, że pomiędzy podstawą elementu, a liczbą, ma być zero spacji, * element drugi, to jest parametr, jeżeli niepusty, określający, że dla pierwszego elementu ma pisać jedynkę zamiast jedynki lub wartości pustej w zależności od istnienia takiej pierwszej zmiennej, * element trzeci, to jest parametr, jest to liczba przesunięcia, od której ma liczyć parametr nazwany, * element czwarty, to jest parametr określający, od jakiej liczby ma zaczynać na początku od dodatniego wskaźnika (zmiennej), brana jest liczba minimalna dodatnia, ze wszystkich takich liczb, uwzględniając element, od którego startuje liczenie, * element piąty, to jest parametr określający, do jakiej liczby ma kończyć iterację dla danego wskaźnika (zmiennej), jako koniec liczenia brana jest liczba maksymalna dodatnia, ze wszystkich takich liczb, uwzględniając na początku policzony powyżej koniec liczenia. Przykładem tego parametru dla danej zmiennej jest: {{Code|tak,tak,5,3,4}}, a z dodatkiem globalnego przesunięcia dla wszystkich zmiennych: {{Parametr|parametry|5;<zmienna>{{=}}tak,tak,5,3,4}}, a dla wielu zmiennych: {{Pre|{{Parametr|parametry|5;<zmienna 1>{{=}}tak,tak,5,3,4;<zmienna 2>{{=}}tak,,10,7,9;<zmienna 3>{{=}},tak,8,9,11}}}} Zamiast wartości: {{Code|zmienna 1>}}, {{Code|<zmienna 2>}} i {{Code|<zmienna 3>}}, są pewne nazwy bazowe parametrów bez numerka na jej końcu. W zmiennej {{Code|parametry}} można nie podawać dalsze elementy po przecinku, jeżeli są puste lub nieważne (nic nie zmieniają) lub można nie podać nic po znaku {{Code|{{=}}}} (a w tym przypadku nawet można nie podawać tego znaku) dla danego problemu funkcji. Parametrem {{Parametr|1|<wikikod>}},którego wartość, jest wikikodem do iteracji, gdy ten parametr nie jest podany, to funkcja zwraca wartość {{Code|(brak parametru do analizy)}}, a gdy ten parametr jednak jest podany, ale jest ciągiem pustym, wtedy wartość zwracana jest {{Code|(parametr do analizy pusty)}}. Gdy parametr {{Code|tonumber(frame.args["start"]) or 1}}, jest równy zero, funkcja zwraca błąd: {{Code|(początek jest ustawiony na zero)}}. A jeżeli zatem żaden parametr nie jest podany, to można użyć argumentu {{Code|niepodane}}, która wygeneruje jeden krok, tylko jeden, iteracji. Gdy {{Code|nic}} przyjmuje wartość, i gdy pomijamy parametr, lub on przyjmuje wartość pustą, wtedy a funkcja nie może generować żadnego kroku iteracji, to wtedy jest zwracana wartość niepusta {{Code|nic}} lub ciąg pusty. Parametr {{Code|po kolei}} niepusty powoduje, że zbieranie parametrów odbywa się od pewnego miejsca i idzie w sposób ciągły do góry, co jeden, aż do pewnej granicy. Parametr {{Code|wytnij}} wycina parametry puste i niepodane, a {{Code|wytnij puste}} tylko puste, ale {{Code|nie wytnij nazwane}} nie wycina parametrów nazwanych. Znacznik {{Code|_i}} określa symbol, jak ona może być używana do zastępowania zmiennych typu {{Code|<nowiki>{{((}}_i{{))}}</nowiki>}} i {{Code|<nowiki>{{((}}_i_i{{))}}</nowiki>}}, wtedy ich się używa zamiast: {{Code|<nowiki>{{((}}_{{))}}</nowiki>}} i {{Code|<nowiki>{{((}}__{{))}}</nowiki>}}. W wyniku iteracji otrzymamy tablicę ciągów łańcuchów z wiikodami, wtedy ta funkcja używa funkcji: {{Pre|lancuch_znakow {{=}} BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum);}} wraz z jego parametrami podane w jego ramce {{Code|frame}}, które jednocześnie sa parametrami {{m|Ramka|Powtarzaj}}, używa do łączenia w pewien określony zbiór uporządkowanych ciągów do jednego łańcucha, który jest zwracany bezpośrednio przez tą funkcję be rozwijania przy parametrze {{Parametr|nie rozwiń|tak}}, a gdy on nie przyjmuje wartości niepustej, w takim razie on jest rozwijany funkcją {{Code|pf:preprocess(lancuch_znakow)}}, i jest zwracany jako wartość omawianej funkcji. Funkcja jest używana np. w silnikach szablonów, np.: {{s|Osobny artykuł/silnik}} szablonu {{s|Osobny artykuł}}, jak i jego podobnych szablonów, wykorzystujących ten właśnie silnik. Również przykładem jest: {{s|Kategoria główna/silnik}} szablonu {{s|Kategoria główna}} i innych, którego jest on silnikiem. A nawet podobnie jest z: {{s|Spójrz też/silnik}} szablonu {{s|Spójrz też}}. Podobnie się definiuje inny szablon, który drukuje nierozwinięty wikikod ze składników przy pomocy parametrów, który po włączeniu do większego kodu, dopiero wtedy jest rozwijany, przykładem tego jest: {{s|Wybrane grupy książek}}. == {{Code|p.PowtarzajOdDo(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.PowtarzajOdDo=function(frame)...end; </syntaxhighlight> Funkcja tworzy wikikod do rozwinięcia, np. przez funkcję {{m|Ramka|Rozwiń}}, lub go rozwija na końcu, na podstawie kolejnych kroków iteracji: * {{Code|start}} - początek iteracji dokonywany przez ta funkcję, * {{Code|koniec}} - koniec iteracji dokonywany przez ta funkcję, * {{Code|krok}} - krok iteracji, co którynumer ma iterować, * {{Code|łącznik}} - szereg łączących elementy z wikikodem, a jak nie ma tego elementu podanego, to czy ma być oddzielony nową linią na podstawie zmiennej {{Code|nowa linia}}, a jeżeli to nawet nie jest podane, to podany ciąg jest łączony poprzez szereg pusty, * {{Code|nowa linia}} - szereg mówiący, czy ma łączyć szeregi kodem nową linią, jeżeli {{Code|łącznik}} nie jest podany, * {{Code|przeskok}} - dodatkowy krok, nie licząc jedynki, jak ma iterować ciąg, ** Ta zmienna w każdym kroku iteracji zależna jest od: {{Code|<nowiki>{{_}}</nowiki>}} i {{Code|<nowiki>{{ciąg}}</nowiki>}}, mówiąca o numerze jego kroku, * {{Code|nie rozwiń}} - niepusta wartość, wtedy kod nie jest rozwijany, jeśli uzyskany kod nie jest rozwijany, w końcowym etapie można go rozwinąć przy pomocy funkcji {{m|Ramka|Rozwiń}}, * {{Code|1}} - aktualny wikikod ze zmiennymi poniżej przedstawiający aktualny krok iteracji, z którego dla każdego elementu te ciągi są łaczone za pomocą łącznika. Zmienne w kodzie: {{Code|1}} i {{Code|przeskok}} (jeżeli podana), podstawiane w nich pewne zmienne, które zamiast nich pewne liczby coś symbolizujące: * {{Code|<nowiki>{{start}}</nowiki>}} - przyjmuje wartość {{Tt|1}}, * {{Code|<nowiki>{{koniec}}</nowiki>}} - przyjmuje wartość, który jest liczbą elementów w ciągu oddzielonych średnikami w zmiennej {{Code|ciąg}}, * {{Code|<nowiki>{{krok}}</nowiki>}} - przyjmuje wartość {{Tt|1}}. Zmienne inne za każdym krokiem iteracji, z których korzystają: {{Code|1}} i {{Code|przeskok}}: * {{Code|<nowiki>{{_}}</nowiki>}} - symbol, za którą jest podstawiana liczba przyjmująca aktualną wartość numeru iteracji. Przykładowym kodem jest kod, którego wikikod znajduje się szablonu w silniku: {{s|Chem/silnik}}, szablonu: {{s|Chem}}, przykłady działania tego kodu: * {{Code|{{s|Chem|C|n|H|2n&nbsp;+&nbsp;2}}}} → {{Tt|{{Chem|C|n|H|2n&nbsp;+&nbsp;2}}}} * {{Code|{{s|Chem|H|3|O|+}}}} → {{Tt|{{Chem|H|3|O|+}}}} * {{Code|{{s|Chem|SO|4|2-}}}} → {{Tt|{{Chem|SO|4|2-}}}} * {{Code|{{s|Chem|4|He}}}} → {{Tt|{{Chem|4|He}}}} * {{Code|{{s|Chem|4|2|He}}}} → {{Tt|{{Chem|4|2|He}}}} Na podstawie tej funkcji dokonano w szablonie {{s|Chem}}, że ona może przyjmować dowolną liczbę parametrów numerowanych. == {{Code|p["PrzetwarzajIterującCiąg"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["PrzetwarzajIterującCiąg"]=function(frame)...end; </syntaxhighlight> Funkcja do iteracji ciągu z wikikodem i pewnymi zmiennymi. * {{Code|ciąg}} - lista parametrów oddzielonych średnikami, z którego jest tworzona tablica z elementów pomiędzy srednikami, * {{Code|łącznik}} - szereg łączących elementy z wikikodem, a jak nie ma tego elementu podanego, to czy ma być oddzielony nową linią na podstawie zmiennej {{Code|nowa linia}}, a jeżeli to nawet nie jest podane, to podany ciąg jest łączony poprzez szereg pusty, * {{Code|nowa linia}} - szereg mówiący, czy ma łączyć szeregi kodem nową linią, jeżeli {{Code|łącznik}} nie jest podany, * {{Code|przeskok}} - dodatkowy krok, nie licząc jedynki, jak ma iterować ciąg, ** Ta zmienna w każdym kroku iteracji zależna jest od: {{Code|<nowiki>{{_}}</nowiki>}} i {{Code|<nowiki>{{ciąg}}</nowiki>}}, mówiąca o numerze jego kroku, * {{Code|nie rozwiń}} - niepusta wartość, wtedy kod nie jest rozwijany, jeśli uzyskany kod nie jest rozwijany, w końcowym etapie można go rozwinąć przy pomocy funkcji {{m|Ramka|Rozwiń}}, * {{Code|1}} - aktualny wikikod ze zmiennymi poniżej przedstawiający aktualny krok iteracji, z którego dla każdego elementu te ciągi są łaczone za pomocą łącznika. Zmienne w kodzie: {{Code|1}} i {{Code|przeskok}} (jeżeli podana), podstawiane w nich pewne zmienne, które zamiast nich pewne liczby coś symbolizujące: * {{Code|<nowiki>{{start}}</nowiki>}} - przyjmuje wartość {{Tt|1}}, * {{Code|<nowiki>{{koniec}}</nowiki>}} - przyjmuje wartość, który jest liczbą elementów w ciągu oddzielonych średnikami w zmiennej {{Code|ciąg}}, * {{Code|<nowiki>{{krok}}</nowiki>}} - przyjmuje wartość {{Tt|1}}. Zmienne inne za każdym krokiem iteracji, z których korzystają: {{Code|1}} i {{Code|przeskok}}: * {{Code|<nowiki>{{_}}</nowiki>}} - symbol, za którą jest podstawiana liczba przyjmująca aktualną wartość numeru iteracji, * {{Code|<nowiki>{{ciąg}}</nowiki>}} - jest to wartość pojedynczego elementu w {{Code|ciąg}}. Przykładowym kodem jest kod, którego część znajduje się tutaj, z szablonu {{s|Status}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|PrzetwarzajIterującCiąg | ciąg = {{{junior}}} | przeskok = 0 | 1 = {{((}}#if:{{((}}ciąg{{))}} {{!}}{{((}}#invoke:Ramka{{!}}Szablon {{!}}parametry funkcji modułu pudełek{{=}}tak {{!}}Nazwa{{=}}Kategoria{{!}}Wikijunior:{{((}}ucfirst:{{((}}ciąg{{))}}{{))}} {{))}} {{))}} }} </syntaxhighlight> Wartością w tym przypadku zmiennej szablonowej {{Code|<nowiki>{{{junior}}}</nowiki>}} może być: {{Parametr|junior|Owoce;Warzywa}}. Ta funkcja najpierw iteruje po wartości {{Code|Owoce}}, a później po {{Code|Warzywa}}. Powyższy kod, uzyskany w ten sposób wikikod, jest rozwijany za pomocą funkcji systemowej {{lpg|Lua}} w {{lpr|Lua|Scribunto}}: {{Code|pf:preprocess(lancuch)}}, jeśli: {{Code|nie rozwiń}}, nie przybiera wartości niepustej. == {{Code|p["PowtarzajWedług"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["PowtarzajWedług"] = function(frame)...end; </syntaxhighlight> Funkcja wyszukuje ile jest stron o danym wzorze, np.dla stron o podstawie „{{Ns:Template}}:Polecane książki/”:{{Parametr|wzór|{{Ns:Template}}:Polecane książki/{{((}}_{{))}}}}. * {{Code|start}} - od jakiej liczby ma liczyć strony (domyślną wartością jest {{Code|1}}, od której zaczyna się liczenie stron o podany wzorze numeracyjnym), * {{Code|wzór}} - wzór według tego, co ma sprawdzając, czy one pasują do niego. Parametr {{Code|wzór}} ma w sobie {{font|color=blue|<nowiki>{{_}}</nowiki>}}, za którą podstawiany jest numer w postaci liczby naturalnej innej niż zero. === Przykłady użycia === Przykład z tą funkcją znajduje się w kodzie w szablonie: {{s|Lista wybranych książek}}, która po wywołaniu wypluwa wynik: * Szablon wypluwający listę stron według wzoru w postaci tekstu: ** {{Code|{{s|Lista wybranych książek|Polecane książki}}}} → {{Tt|{{Lista wybranych książek|Polecane książki}}}} ** {{Code|{{s|Lista wybranych książek|Nowe podręczniki miesiąca}}}} → {{Tt|{{Lista wybranych książek|Nowe podręczniki miesiąca}}}} ** {{Code|{{s|Lista wybranych książek|Wyróżnienia książek miesiąca}}}} → {{Tt|{{Lista wybranych książek|Wyróżnienia książek miesiąca}}}} * Szablon wypluwający listę stron według wzoru w postaci linków: ** {{Code|{{s|Lista wybranych książek|Polecane książki|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Polecane książki|link=tak}}}} ** {{Code|{{s|Lista wybranych książek|Nowe podręczniki miesiąca|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Nowe podręczniki miesiąca|link=tak}}}} ** {{Code|{{s|Lista wybranych książek|Wyróżnienia książek miesiąca|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Wyróżnienia książek miesiąca|link=tak}}}} == {{Code|p["LiczbaPrawychUkośników"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["LiczbaPrawychUkośników"] = function(frame)...end; </syntaxhighlight> Szablon wyszukuje liczbę prawych ukośników w wielopoziomowym adresie strony. * {{Code|1}} - wielopoziomowy adres z ewentualnie prawymi ukośnikami. Jeżeli ten adres nie zawiera tych ukośników, to funkcja zwraca wartość {{Tt|0}}. === Przykład użycia === * {{Code|{{m|Ramka|LiczbaPrawychUkośników|1{{=}}Podstawia/Poziom_1/Poziom_2/Poziom_3/Poziom_4/Poziom_5}}}} → {{Tt|{{#invoke:Ramka|LiczbaPrawychUkośników|1=Podstawia/Poziom_1/Poziom_2/Poziom_3/Poziom_4/Poziom_5}}}} == {{Code|p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"] = function(frame)...end; </syntaxhighlight> Funkcja wyszukuje ile jest stron o danym wzorze, np.dla stron o podstawie „{{Ns:Template}}:Polecane książki/”:{{Parametr|wzór|{{Ns:Template}}:Polecane książki/{{((}}_{{))}}}}. * {{Code|start}} - od jakiej liczby ma liczyć strony (domyślną wartością jest {{Code|1}}, od której zaczyna się liczenie stron o podany wzorze numeracyjnym), * {{Code|wzór}} - wzór według tego, co ma sprawdzając, czy one pasują do niego. Parametr {{Code|wzór}} ma w sobie {{font|color=blue|<nowiki>{{_}}</nowiki>}}, za którą podstawiany jest numer w postaci liczby naturalnej innej niż zero. === Przykłady użycia === Przykład z tą funkcją znajduje się w kodzie w szablonie: {{s|Liczba list wybranych książek}}, która po wywołaniu wypluwa wynik: * {{Code|{{s|Liczba list wybranych książek|Polecane książki}}}} → {{Tt|{{Liczba list wybranych książek|Polecane książki}}}} * {{Code|{{s|Liczba list wybranych książek|Nowe podręczniki miesiąca}}}} → {{Tt|{{Liczba list wybranych książek|Nowe podręczniki miesiąca}}}} * {{Code|{{s|Liczba list wybranych książek|Wyróżnienia książek miesiąca}}}} → {{Tt|{{Liczba list wybranych książek|Wyróżnienia książek miesiąca}}}} == {{Code|p["MinimalnyNumerSpośródNieodpowiednikowychZmiennych"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["MinimalnyNumerSpośródNieodpowiednikowychZmiennych"]=function(frame)...end; </syntaxhighlight> Szablon szuka minimalny numer wśród zmiennych szablonu o pewnej podstawie tego numerowanego schemacie "<zmienna>(%d*)". * {{Code|zmienna}} - podstawa parametru numerowanego liczbami lub ciągiem pustym, * {{Code|odpowiednik}} - czy ma zaufać jego odpowiednikowi nienazwanemu szablonu. Szablon przekształca wartość parametru {{Code|zmienna}} do czystego tekstu, względem wyrażeń regularnych {{lpr|Lua}}. Parametry: zmienna i odpowiednik, to parametry ramki. * Popatrz na definicję przykładu - szablonu: {{s|Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych}}. === Przykład przy pomocy szablonu z definicją z tą funkcją === * {{Code|{{s|Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych|zmienna{{=}}parametr|odpowiednik{{=}}|parametr3{{=}}tak|parametr5{{=}}tak|subnazwa=tak}}}} → {{Tt|{{Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych|zmienna=parametr|odpowiednik=|parametr3=tak|parametr5=tak}}}} == {{Code|p.IleJestTakichNieodpowiednikowychZmiennych(frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.IleJestTakichNieodpowiednikowychZmiennych=function(frame)...end; </syntaxhighlight> Funkcja szuka wśród parametrów szablonu o pewnej podstawie tego numerowanego schemacie "<zmienna>(%d*)". * {{Code|zmienna}} - podstawa nazwowa parametru numerowanego, * {{Code|odpowiednik}} - czy ma ufać parametrowi nienazwanemu szablonu. Szablon przekształca wartość parametru {{Code|zmienna}} do czystego tekstu, względem wyrażeń regularnych {{lpg|Lua}}. Parametry: {{Code|zmienna}} i {{Code|odpowiednik}}, to parametry ramki. * Popatrz na definicję przykładu - szablonu: {{s|Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych}}. === Przykład przy pomocy szablonu z definicją z tą funkcją === * {{Code|{{s|Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych|zmienna{{=}}parametr|odpowiednik{{=}}|parametr1{{=}}tak|parametr2{{=}}tak|subnazwa=tak}}}} → {{Tt|{{Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych|zmienna=parametr|odpowiednik=|parametr1=tak|parametr2=tak}}}} == {{Code|p["Parametr w tablicy nazw"](frame)}} == Funkcję uruchamia się w ramce jakodziecko w jakimś szablonie rodzicu. Skrótowa definicja funkcji jest: <syntaxhighlight lang="lua"> p["Parametr w tablicy nazw"]=function(frame)...end; </syntaxhighlight> Funkcja wywoływana w postaci ramki szuka parametru w tablicy podanych parametrów. * {{Code|parametry}} - lista parametrów oddzielonych średnikiem, * {{Code|pozycja}} - szukana lista w tablicy parametrów, * {{Code|od dużej}} - czy parametr i elementy listy mają być zamieniane od dużej litery. Funkcja, jeżeli wyszukała w tej tablic parametr (pozycję) zwraca wartość {{Code|tak}}, w przeciwnym wypadku zwraca {{Code|nil}}, wartość języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, która po transformacji na wikikod jest zamieniana na ciąg pusty. === Przykłady użycia funkcji === * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}parametr2}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=parametr2}}}} * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}parametr4}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=parametr4}}}} * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}Parametr2|od dużej{{=}}tak}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=Parametr2|od dużej=tak}}}} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mgexho1nnlcnbfqdfdpx42jeahu40ja 538651 538650 2026-03-31T12:56:09Z Persino 2851 538651 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Ramka}}|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 ramka_modul=require("Module:Ramka"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == {{Code|ParserBlokowy()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}} tylko w module {{Code|{{ld2|Ramka}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function ParserBlokowy(frame, co_ma_wywolac)...end; </syntaxhighlight> Funkcja przyjmuje tablicę ramki tablicy transportu funkcji i drugi parametr, który mówi, czy ma uwzględniać dany szablon, jeżeli {{Tt|0}}, funkcję modułu, jeżeli {{Tt|1}}, i funkcję parsera, jeżeli: {{Tt|2}}, a {{Tt|3}} i dalej, to już dany szablon. Tablica ramki może przyjmować ze strony ramki dziecka szablonu, jak i parametry rodzica szablonu, te ramki są: * Funkcja przyjmuje parametry podstawowe, które piszemy w postaci: ** {{Code|Nazwa}} - jest to nazwa szablonu, modułu, czy parsera, ** {{Code|bez argumentów rodzica}} - tablica parametrów oddzielonych średnikami, których szablon nie przyjmuje,nawet jeżeli one są, ** {{Code|nazwa szablonu rodzica}} - jest to zmienna przechowująca nazwę szablonu rodzica ramki dziecka, ** {{Code|bez argumentów nienazwanych rodzica}} - szablon w ramce nie przyjmuje parametrów nienazwanych podanych w rodzicu ramki, ** {{Code|potomek}} - zmienna mówiąca, że to jest potomek rodzica ramki, jeżeli nie jest podany parametr {{Code|nie potomek}} - dodane przez tę funkcję, ** {{Code|nie potomek}} - zmienna mówiąca, że to nie jest potomek szablonu, ** {{Code|bez argumentów szablonu}} - zmienna oddzielonych średnikami parametrów, których nie wolno uwzględniać w walidacji błędów w {{m|Sprawdź|Parametry}}, ** {{Code|bez dodatkowych sprawdzeń}} - nie jest uruchamiana walidacja parametrów szablonu rodzica, ** {{Code|parametry rodzica}} - zmienna przedstawiająca parametry rodzica przekazane do ramki: {{m|Sprawdź|Parametry}} - dodane przez tę funkcję, ** {{Code|zmienna z parametrami rodzica}} - parametr mówiący, czy ma tworzyć zmienne z parametrami rodzica, a jeżeli nie jest on, z zadnych z jego potomków podany, to zmienna ta z parametrami jest przekazywana na kolejnego przodka, ** {{Code|zmienna z argumentami ramki}} - zmienna mówiąca, czy mają być tworzone parametry ramki,które nie są walidowane przez walidację błędów w {{m|Sprawdź|Parametry}}, wtedy te parametry rodzica nie mogą być podane, przy pomocy tej zmiennej zmienne z: {{Code|bez argumentów szablonu}} są łączone z parametrami ramki, ** {{Code|zmienna z nazwą szablonu rodzica}} - parametr, czy ma tworzyć zmienną: {{Code|nazwa szablonu rodzica}}, ** {{Code|parametry funkcji modułu pudełek}} - czy do funkcji mają wchodzić niepodstawowe nienazwane parametry modułu pudełek, a nie inne zmienne, ** {{Code|parametry podstawowe funkcji modułu pudełek}} - czy do funkcji mają wchodzić podstawowe parametry funkcji modułu pudełek, a nie inne zmienne, ** {{Code|usuń z parametrów ramki}} - parametr przedstawiający zmienne oddzielone średnikami, których parametrów ramki ma nie uwzględniać. * {{Code|Funkcja}} - nazwa funkcji w module, który ma wywołać, w przypadku, gdy parametr funkcji {{sr|#ParserBlokowy()|p=Ramka}} ma wartość {{Tt|1}}, czyli wywołujemy funkcję {{sr|#p["Moduł"]()|p=Ramka}}. Funkcja uruchamia szablon z parametrami rodzica ramki bez parametrów opisanych zmienną: {{Code|bez argumentów szablonu}}, i bez parametrów ramki minus zmienne opisane przez: {{Code|usuń z parametrów ramki}} dla wartości {{Tt|0}}, funkcję modułu ramki dla wartości {{Tt|1}}, funkcję parsera dla {{Tt|2}}, i {{Tt|3}} i dalej funkcję szablonu. Za pomocą tej funkcji możemy wielopoziomowo wywoływać funkcje przekazując parametry od najwyższego poziomu do najniższego. Ta funkcję jako do budowy szablonów, definiując też w jednym miejscu walidację błędów, dla przykładu wykorzystano ją w: {{s|Wzór}}, {{s|Wzór2}}, {{s|CentrujWzór}},{{s|CentrujWzór2}}, i inne, czyli uruchamianie szablonów, a uruchamianie funkcji modułu, w tym funkcji {{m|Cytuj|custom}} w szablonie {{s|PrzypisStrona}}. Przykładem wywołania szablonu jest, która jest w szablonie: {{s|Wzór}}, w którym jest wywoływany inny szablon, tym razem silnik tego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Wzór/silnik|pozycja numeracji=po prawej|wyrównanie={{{wyrównanie|lewy}}}|bez argumentów szablonu=pozycja numeracji|zmienna z parametrami rodzica=tak}} </syntaxhighlight> A przykład wywołania funkcji modułu, która jest w: {{s|PrzypisStrona}}, w którym jest wywoływany funkcja modułu {{m|Cytuj|custom}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Moduł|Nazwa=Cytuj|Funkcja=custom | url = {{{adres}}}/{{{1|{{{podstrona}}}}}} | tytuł = {{{2|{{{nazwa}}}}}} | praca = {{lz | s = {{Jeśli niepuste|{{{serwis|}}}|{{Dopasuj|ciąg={{{adres}}}|wzór=^(%a+:%/%/[^%/]+)}}}} | n = {{Dopasuj|ciąg={{Jeśli niepuste|{{{serwis|}}}|{{{adres}}}}}|wzór=^%a+:%/%/([^%/]+)}} }} | data = {{#if:{{{data|}}}|{{Czas|Y-m-j|{{{data}}}}}}} | data dostępu = {{Czas|j.m.Y|{{{data dostępu|}}}}} }} </syntaxhighlight> == {{Code|BudowaSzereguZDanych()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}} tylko w module {{Code|{{ld2|Ramka}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum)...end; </syntaxhighlight> Funkcja posiada następujące parametry podane w tablicy ramki dla funkcji zwracanej tablicy transportu: * {{Code|akapit}} - jeśli niepusta, to ona definiuje akapit ze znaków: {{Code|\n\n}}, * {{Code|przecinek}}- drukuje przecinek, jeśli posiada wartość niepustą, ten przecinek jest w postaci: {{Code|", "}}, został on specjalnie objęty w cudzysłowy, aby zilustrować, że po przzecinku znajduje się spacja, * {{Code|nowa linia}} - w przeciwieństwo do {{Code|akapit}}, pisze jedną nową linię, a nie dwie, jako: {{Code|\n}}, * {{Code|wyliczanka}} - wylicza elementy z przecinkami, stawiając przed ostatnim elementem zamiast jego wyraz wyliczania {{Code|i}}, * {{Code|początek}} - mówi, że na początku musi znajdować się przecinek, * {{Code|myślnik}} - mówi, że jeśli nie ma początku przecinka, to stawiany jest myślnik, używany zamiast {{Code|poczatek}}, * {{Code|warunkowe}} - instrukcje wikikodu niezawierające we wnętrzu klamerek zostaną rozwinięte, ** {{Code|parametr}} - mówi w derektywach, jeśli niepusty, że derektywy muszą przyjmować wartość w postaci pseudoszablonów, w przeciwnym wypadku jego odpowiednika znaku, ** Funkcja w tym warunku zwraca ciąg znaków rozwiniętego warunku. Funkcja posiada też mikroszablony: * {{Code|<nowiki>{{min}}</nowiki>}} - minimalna wartość szeregu zmiennych, * {{Code|<nowiki>{{max}}</nowiki>}} - a tutaj ich maksymalna. Te dwie zmienne są podstawiane do uzyskanego ciągu. Uzyskany tekst jest łączony za pomocą akapitu,a jak nie, to nowych linii, w przeciwnym wypadku jest łączony ciągiem pustym. Deklaracja, a zarazem definicja funkcji wygląda następująco: <syntaxhighlight lang="lua"> local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum) ... end; </syntaxhighlight> * {{Code|frame}} - tablica ramki w tablica transportu funkcji {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, * {{Code|tab_lancuch}} - jest to tablica uzyskanych z innych funkcji wikikodów w tym module, * {{Code|minimum}} - jak powyżej: {{Code|<nowiki>{{min}}</nowiki>}}, * {{Code|maksimum}} - jak powyżej: {{Code|<nowiki>{{max}}</nowiki>}}. Funkcja zwraca rozwinięty, co do instrukcji warunkowych bez wewnętrznych klamerek, połączonych podanych łańcuchów odpowiednio w postaci tablicy, do odpowiedniego szeregu, pod którym jest ukryty wikikod. == {{Code|p.InstrukcjeWarunkowe()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. {{Tabela|klasa=wikitable tekst-centruj-td|pozycja=prawo|liczba wierszy=12|liczba kolumn=3 | nagłówek 1 = Derektywa | nagłówek 2 = Odpowiednik znakowych | nagłówek 3 = Pseudoszablon | komórka 1_1 = __!__ | komórka 1_2 = &#124; | komórka 1_3 = {{s|!}} | komórka 2_1 = __!!__ | komórka 2_2 = &#124;&#124; | komórka 2_3 = {{s|!!}} | komórka 3_1 = __(__ | komórka 3_2 = &#123; | komórka 3_3 = {{s|(}} | komórka 4_1 = __((__ | komórka 4_2 = &#123;&#123; | komórka 4_3 = {{s|((}} | komórka 5_1 = __(((__ | komórka 5_2 = &#123;&#123;&#123; | komórka 5_3 = {{s|(((}} | komórka 6_1 = __)__ | komórka 6_2 = &#125; | komórka 6_3 = {{s|)}} | komórka 7_1 = __))__ | komórka 7_2 = &#125;&#125; | komórka 7_3 = {{s|))}} | komórka 8_1 = __)))__ | komórka 8_2 = &#125;&#125;&#125; | komórka 8_3 = {{s|)))}} | komórka 9_1 = __!(__ | komórka 9_2 = &#91; | komórka 9_3 = {{s|!(}} | komórka 10_1 = __!((__ | komórka 10_2 = &#91;&#91; | komórka 10_3 = {{s|!((}} | komórka 11_1 = __)!__ | komórka 11_2 = &#93; | komórka 11_3 = {{s|)!}} | komórka 12_1 = __))!__ | komórka 12_2 = &#93;&#93; | komórka 12_3 = {{s|))!}} }} Definicja częściowa tego kodu jest w postaci: <syntaxhighlight lang="lua"> p.InstrukcjeWarunkowe = function(ciag,derektywy_specjalne,derektywy_parametrowe)...end; </syntaxhighlight> * {{Code|ciag}} - podany ciąg do rozwinięcia z instrukcji warunkowych wewnątrz nie posiadający klamewrek, * {{Code|derektywy_specjalne}} - używa do zastępowania specjalnych derektyw, podane poniżej, * {{Code|derektywy_parametrowe}} - czy używać pseudoszablonów zamiast ich odpowiedników znakowych. Obsługiwane instrukcje warunkowe: {{Code|{{s|#if:[^{}]*}}}}, {{Code|{{s|#ifeq:[^{}]*}}}}, {{Code|{{s|#switch:[^{}]*}}}}, {{Code|{{s|#ifexpr:[^{}]*}}}}, {{Code|{{s|#expr:[^{}]*}}}}, {{Code|{{s|#iferror:[^{}]*}}}} i {{Code|{{s|#iferror:[^{}]*}}}}. Ta funkcja jest używana przez funkcję: {{Code|{{sr|#BudowaSzereguZDanych()|p=Ramka}}}}, poprzez funkcję: {{Code|{{sr|#p.Powtarzaj()|p=Ramka}}}}. Przykłady użycia pośrednio przez tą ostatnią funkcję: ona jest użyta w walidacji błędów {{m|Sprawdź|Parametry}} poprzez: {{m|Ramka|Powtarzaj|...|warunkowe{{=}}tak|...}}, na przykładzie w kodzie derektywy: {{Code|__!__}}. == {{Code|p.RozpakujArgumenty()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p.RozpakujArgumenty = function(zmienna_z_argumentami)...end; </syntaxhighlight> Funkcja przyjmuje jeden parametr ze zmiennymi oddzielonych średnikami, je rozpakowuje wyjmując z pól pomiędzy średnikami zmienne, i układa je w tablicy, która jest zwaracana jako parametr, te parametry mogą mięć mikroszablony, które sa zastępowane odpowiednikami znakowymi. Jedynym tego przykładem jest mikrofunkcja {{Code|<nowiki>{{+}}</nowiki>}}, ktora jest zamieniana na średnik. == {{Code|p.PakujParametry()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Funkcja pakuje parametry tablicy {{lpg|Lua}} do tablicy: {{Code|JSON}}, przy pomocy funkcji, którego wynik jest zwracany do tej funkcji: <syntaxhighlight lang="lua"> p.PakujParametry = function(args) return mw.text.jsonEncode(args,mw.text.JSON_PRESERVE_KEYS); end; </syntaxhighlight> Ten szablon nazywa parametry jakby nienazwane w tablicy {{Code|JSON}} (tutaj numerowanie jest od zera) z tablicy {{lpg|Lua}} (tutaj od jedynki), do tablicy nazwanej, jak to robi się w {{Lpr|Lua|Scribunto}}. == {{Code|p.RozpakujParametry()}} == Funkcje się uruchamia w zwykłej funkcji w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Funkcja rozpakowuje parametry z tablicy: {{Code|JSON}}, do tablicy {{lpg|Lua}}, przy pomocy funkcji, którego wynik jest zwracany do tej funkcji: <syntaxhighlight lang="lua"> p.RozpakujParametry = function (zmienna_z_parametrami) return mw.text.jsonDecode(args,mw.text.JSON_PRESERVE_KEYS); end; </syntaxhighlight> Ten szablon nazywa parametry nienazwane w tablicy {{lpg|Lua}} (tutaj od jedynki) z tablicy {{Code|JSON}} (tutaj numerowanie jest od zera), do tablicy nienazwanej z nazwanej, jak to robi się w {{Lpr|Lua|Scribunto}}. == {{Code|p["Rozwiń"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["Rozwiń"] = function(frame)...end; </syntaxhighlight> Szablon rozwija wikikod podany w zmiennej {{Code|1}}. * Szablon jest użyty w szablonie: {{s|Wybrane grupy książek}}, która generuje układ wielokolumnowy układ bloków ramkowych przy pomocy funkcji: {{s|Blok ramkowy}} i {{s|Blok ramkowy/Zamknij}}, * Szablon również jest użyty w szablonach: {{s|Osobny artykuł/silnik}}, {{s|Kategoria główna/silnik}}, {{s|Spójrz też/silnik}}, itd.. Przykład wywołania funkcji: * {{Code|{{m|Ramka|Rozwiń|1{{=}}<wikikod>}}}} - funkcja rozwija podany wikikod podany w zmiennej {{Code|1}}. Kod tej funkcji bibliotecznej w tym module, tzn.: {{Ld2|Ramka}}, jest: <syntaxhighlight lang="lua"> p["Rozwiń"] = function(frame) return frame:getParent():preprocess(frame.args[1]); end; </syntaxhighlight> == {{Code|p.Log(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Log = function(frame)...end; </syntaxhighlight> Szablon wysyła logi do konsoli {{Code|MediaWiki}} w postaci tekstu: ukryty pod zmienna: {{Code|log}}, i ewentualnie zwraca ten tekst, jeżeli zmienna: {{Code|wikitext}}, przyjmuje wartość niepustą, lub jest niepodana. Przykłady użycia funkcji: * {{Code|{{m|Ramka|Log|log{{=}}<tekst>|wikitext{{=}}tak}}}}- tutaj funkcja (ramka) wysyła do konsoli tekst ukryty pod zmienną: {{Parametr|log|<tekst>}}, i jednocześnie zwraca jej wartość. Kod tej funkcji bibliotecznej w tym module, tzn.: {{Ld2|Ramka}}, jest: <syntaxhighlight lang="lua"> p.Log = function(frame) local parametry_modul=require("Module:Parametry"); local czy_zwracac=parametry_modul.CzyTak(frame.args["wikitext"]); local wikitekst=frame.args["log"]; mw.log(wikitekst); return (czy_zwracac and wikitekst or ""); end; </syntaxhighlight> == {{Code|p.Szablon(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|0}} symbolizującego rozwijanie szablonu: <syntaxhighlight lang="lua"> p.Szablon = function(frame) return ParserBlokowy(frame,0); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p["Moduł"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|1}} symbolizującego rozwijanie funkcji modułu ramki: <syntaxhighlight lang="lua"> p["Moduł"] = function(frame) return ParserBlokowy(frame,1); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p.Parser(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Funkcja wywołuje inną funkcję, ale lokalną w postaci zwracanej wartości dla drugiego parametru zerowego {{Code|2}} symbolizującego rozwijanie funkcji parsera: <syntaxhighlight lang="lua"> p.Parser = function(frame) return ParserBlokowy(frame,2); end; </syntaxhighlight> Szablon przyjmuje te same parametry tablicy ramki {{Code|frame}}, co: {{Code|ParserBlokowy}}. == {{Code|p.Q(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Q =function(frame)...end; </syntaxhighlight> Szablon {{s|Q}} przyjmuje tylko jeden parametr {{Parametr|1}}, którą jest nazwa niepełna szablonu, modułu, czy kategorii. Szablon {{s|T}} podobnie jak poprzedni szablon, tylko dodatkowo dopuszcza parametry szablonu, którego uruchamia z nimi szablon (funkcja) o nazwie uzyskanej z funkcji {{m|Ramka|N}}. Szablon {{s|Q}} parametry nienazwane większe od jeden, ale nie pierwszy parametr, jego numer zmniejsza o jeden, a inne pozostawia je w takiej formie, jakim są (nie pierwszy, który nie jest wliczany do parametrów szablonu). W ten sposób wywołujemy szablon podany jako pierwszy parametr tego szablonu z tymi tak uzyskanymi parametrami. === Przykłady użycia funkcji {{s|Ramka|Q}}, a zarazem szablonu {{s|Q}} === * {{Code|{{s|Q|Unicode-c|wstecz{{=}}13|dalej{{=}}15}}}} → {{OverflowWiersz|{{T|Unicode-c|wstecz=13|dalej=15}}}} == {{Code|p.N(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.N=function(frame)...end; </syntaxhighlight> Szablon {{s|N}}, a zarazem funkcja {{s|Ramka|N}} ze strony parametrów ramki, przyjmuje tylko jeden parametr {{Parametr|1}}, którą jest nazwa niepełna szablonu, modułu, czy kategorii. Szablon {{Code|{{s|N|<nazwa strony>|p{{=}}{{!(}}0{{!}}1{{!}}2{{)!}}|n{{=}}tak}}}} przyjmuje parametry oznaczające: * {{Code|p}}, tzn. {{Parametr|p|0}} lub niepodana, oznacza przestrzeń szablonu, {{Parametr|p|1}} przestrzeń modułu i {{Parametr|p|2}} przestrzeń kategorii. * {{Code|n}}, gdy pusta lub niepodana oznacza pełną nazwę strony, a gdy jest niepusta, tylko nazwę strony. === Przykłady użycia funkcji {{m|Ramka|N}} i szablonu {{s|N}} === * {{Code|{{s|N|Unicode-c}}}} → {{Code|{{N|Unicode-c}}}}, {{Code|{{s|N|Unicode-c|n{{=}}tak}}}} → {{Code|{{N|Unicode-c|n=tak}}}} * {{Code|{{s|N|Unicode-c|p{{=}}0}}}} → {{Code|{{N|Unicode-c|p=0}}}}, {{Code|{{s|N|Unicode-c|p{{=}}0|n{{=}}tak}}}} → {{Code|{{N|Unicode-c|p=0|n=tak}}}} * {{Code|{{s|N|Zbiór zadań maturalnych|p{{=}}1}}}} → {{Code|{{N|Zbiór zadań maturalnych|p=1}}}}, {{Code|{{s|N|Zbiór zadań maturalnych|p{{=}}1|n{{=}}tak}}}} → {{Code|{{N|Zbiór zadań maturalnych|p=1|n=tak}}}} * {{Code|{{s|N|Zbiór zadań maturalnych/Szablony|p{{=}}2}}}} → {{Code|{{N|Zbiór zadań maturalnych/Szablony|p=2}}}}, {{Code|{{s|N|Zbiór zadań maturalnych/Szablony|p{{=}}2|n{{=}}tak}}}} → {{Code|{{N|Zbiór zadań maturalnych/Szablony|p=2|n=tak}}}} == {{Code|p.A(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.A=function(frame)...end; </syntaxhighlight> Szablon {{s|A}}, a zarazem funkcja: {{m|Ramka|A}}, z nazwy szablony (bez przestrzeni nazw) usuwa przedrostek {{Code|Książka:}}. Szablon {{Code|{{s|Q|<nazwa strony>|p{{=}}{{!(}}0{{!}}1{{!}}2{{)!}}}}}} przyjmuje parametry oznaczające: * {{Code|p}}, gdy pusta lub niepodana oznacza pełną nazwę strony, a gdy jest niepusta, tylko nazwę strony. === Przykład wykorzystania szablonu {{s|A}}, a zarazem funkcji funkcji {{m|Ramka|A}} === * {{Code|{{s|A|{{N|Unicode-c|n=tak}}}}}} → {{Code|{{A|{{N|Unicode-c|n=tak}}}}}}, {{Code|{{s|A|{{N|Unicode-c}}|p{{=}}tak}}}} → {{Code|{{A|{{N|Unicode-c}}|p=tak}}}} == {{Code|p.Powtarzaj(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.Powtarzaj = function(frame)...end; </syntaxhighlight> Funkcja może przyjmować tylko parametry nienazwane, tylko nazwane, lub nienazwane i nazwane. Funkcja jako podany parametr pierwszy: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Powtarzaj|1=<wikikod>}} </syntaxhighlight> iteruje po podanych parametrach, jako parametry szablonu w zależności od parametrów ramki, zastępując pewne wielkości. Te wielkości to: * {{Code|{{((}}_{{))}}}} (w nawiasach klamrowych podwójnych jest jeden dolny myślnik) - parametr numerowany przyjmujący wartość numerowaną od więcej od {{Code|1}} lub {{Code|1}}, * {{Code|{{((}}__{{))}}}} (w nawiasach klamrowych podwójnych są dwa dolne myślniki) - parametr numerowany przyjmujący wartość numerowaną od więcej od {{Code|1}} albo {{Code|1}} lub ciąg pusty (wtedy tutaj dla jedynki, jeżeli zmienna: {{Code|<zmienna> 1}} lub {{Code|<zmienna>1}}, istnieje, a teraz dla ciągu pustego, jeżeli zmienna {{Code|<zmienna>}} istnieje), one są podane w zmiennych parametrach szablonach, jeżeli w nich wywołana jest ta ramka wywołującą tę funkcję. Parametrem określającym, że brane są pod lupę parametry nazwane i nienazwane, jest zmienna {{Code|różne}}, która wtedy ma wskazywać na wartość niepustą. Najważniejsze parametry, które są to opcjonalne, to są: * {{Code|start}} - liczba, która wskazuje początek liczenia - domyślna wartość to {{Code|1}}, * {{Code|koniec}} - liczba, która wskazuje koniec liczenia. Elementy w {{Code|parametry}} mogą modyfikować odpowiednio te parametry podane zaraz powyżej, ale najpierw parametr wskazujący koniec liczenia musi być policzony w pierwszej fazie, a jeżeli nie ma parametrów nazwanych, wtedy liczy się maksimum numeracyjne parametrów numerowanych, a jeżeli są nazwane, a jeżeli {{Code|różne}} nie jest niepuste, to się liczy maksimum parametrów nazwanych, a w przeciwnym wypadku mamy w zależności od parametru: {{Code|maksimum numeracyjne}}, jeżeli niepusty, to liczy się maksimum numeracyjne, w przeciwnie maksimum z maksimum numeracyjnego i parametrów nazwanych (który zależy od parametru przesunięcia dla danego parametru i parametrów ogólnie, wspólny dla wszystkich parametrów - wyjaśnienie poniżej). To maksimum parametrów nazwanych, dla jakieś podstawy parametrów, jest pomijane, gdy {{Code|dodatkowe}}, która jest zestawem podstaw parametrów oddzielonych średnikami, jest właśnie podany ten parametr w nim. Przykładem jego jest: {{Pre|{{Parametr|dodatkowe|<zmienna 1>;<zmienna 2>;<zmienna 3>}}}} Gdzie zamiast zmiennych {{Code|<zmienna 1>,...}} są pewne nazwy baz parametrów nazwowych bez numerka na samym końcu i ewentualnie spacji. Funkcja przyjmuje ważny parametr {{Code|parametry}} dla parametrów specjalnie nazwanych. Elementy w nim są oddzielone średnikami dla każdej zmiennej z osobna, a dla danej zmiennej zmienne są przedzielone przecinkami. Na początku tego jest opcjonalny element naturalny wspólny dla wszystkich zmiennych oddzielonych od pozostałych elementów średnikiem, jeżeli istnieją. Nie licząc wspólnego elementu dla wszystkich parametrów, to dla danej zmiennej liczba maksymalna elementów podanych po kolei jest {{Code|5}}. Dla danej zmiennej elementy oddzielone przecinkami piszemy w formie: * element pierwszy, to jest parametr, jeżeli niepusty, określający, że pomiędzy podstawą elementu, a liczbą, ma być zero spacji, * element drugi, to jest parametr, jeżeli niepusty, określający, że dla pierwszego elementu ma pisać jedynkę zamiast jedynki lub wartości pustej w zależności od istnienia takiej pierwszej zmiennej, * element trzeci, to jest parametr, jest to liczba przesunięcia, od której ma liczyć parametr nazwany, * element czwarty, to jest parametr określający, od jakiej liczby ma zaczynać na początku od dodatniego wskaźnika (zmiennej), brana jest liczba minimalna dodatnia, ze wszystkich takich liczb, uwzględniając element, od którego startuje liczenie, * element piąty, to jest parametr określający, do jakiej liczby ma kończyć iterację dla danego wskaźnika (zmiennej), jako koniec liczenia brana jest liczba maksymalna dodatnia, ze wszystkich takich liczb, uwzględniając na początku policzony powyżej koniec liczenia. Przykładem tego parametru dla danej zmiennej jest: {{Code|tak,tak,5,3,4}}, a z dodatkiem globalnego przesunięcia dla wszystkich zmiennych: {{Parametr|parametry|5;<zmienna>{{=}}tak,tak,5,3,4}}, a dla wielu zmiennych: {{Pre|{{Parametr|parametry|5;<zmienna 1>{{=}}tak,tak,5,3,4;<zmienna 2>{{=}}tak,,10,7,9;<zmienna 3>{{=}},tak,8,9,11}}}} Zamiast wartości: {{Code|zmienna 1>}}, {{Code|<zmienna 2>}} i {{Code|<zmienna 3>}}, są pewne nazwy bazowe parametrów bez numerka na jej końcu. W zmiennej {{Code|parametry}} można nie podawać dalsze elementy po przecinku, jeżeli są puste lub nieważne (nic nie zmieniają) lub można nie podać nic po znaku {{Code|{{=}}}} (a w tym przypadku nawet można nie podawać tego znaku) dla danego problemu funkcji. Parametrem {{Parametr|1|<wikikod>}},którego wartość, jest wikikodem do iteracji, gdy ten parametr nie jest podany, to funkcja zwraca wartość {{Code|(brak parametru do analizy)}}, a gdy ten parametr jednak jest podany, ale jest ciągiem pustym, wtedy wartość zwracana jest {{Code|(parametr do analizy pusty)}}. Gdy parametr {{Code|tonumber(frame.args["start"]) or 1}}, jest równy zero, funkcja zwraca błąd: {{Code|(początek jest ustawiony na zero)}}. A jeżeli zatem żaden parametr nie jest podany, to można użyć argumentu {{Code|niepodane}}, która wygeneruje jeden krok, tylko jeden, iteracji. Gdy {{Code|nic}} przyjmuje wartość, i gdy pomijamy parametr, lub on przyjmuje wartość pustą, wtedy a funkcja nie może generować żadnego kroku iteracji, to wtedy jest zwracana wartość niepusta {{Code|nic}} lub ciąg pusty. Parametr {{Code|po kolei}} niepusty powoduje, że zbieranie parametrów odbywa się od pewnego miejsca i idzie w sposób ciągły do góry, co jeden, aż do pewnej granicy. Parametr {{Code|wytnij}} wycina parametry puste i niepodane, a {{Code|wytnij puste}} tylko puste, ale {{Code|nie wytnij nazwane}} nie wycina parametrów nazwanych. Znacznik {{Code|_i}} określa symbol, jak ona może być używana do zastępowania zmiennych typu {{Code|<nowiki>{{((}}_i{{))}}</nowiki>}} i {{Code|<nowiki>{{((}}_i_i{{))}}</nowiki>}}, wtedy ich się używa zamiast: {{Code|<nowiki>{{((}}_{{))}}</nowiki>}} i {{Code|<nowiki>{{((}}__{{))}}</nowiki>}}. W wyniku iteracji otrzymamy tablicę ciągów łańcuchów z wiikodami, wtedy ta funkcja używa funkcji: {{Pre|lancuch_znakow {{=}} BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum);}} wraz z jego parametrami podane w jego ramce {{Code|frame}}, które jednocześnie sa parametrami {{m|Ramka|Powtarzaj}}, używa do łączenia w pewien określony zbiór uporządkowanych ciągów do jednego łańcucha, który jest zwracany bezpośrednio przez tą funkcję be rozwijania przy parametrze {{Parametr|nie rozwiń|tak}}, a gdy on nie przyjmuje wartości niepustej, w takim razie on jest rozwijany funkcją {{Code|pf:preprocess(lancuch_znakow)}}, i jest zwracany jako wartość omawianej funkcji. Funkcja jest używana np. w silnikach szablonów, np.: {{s|Osobny artykuł/silnik}} szablonu {{s|Osobny artykuł}}, jak i jego podobnych szablonów, wykorzystujących ten właśnie silnik. Również przykładem jest: {{s|Kategoria główna/silnik}} szablonu {{s|Kategoria główna}} i innych, którego jest on silnikiem. A nawet podobnie jest z: {{s|Spójrz też/silnik}} szablonu {{s|Spójrz też}}. Podobnie się definiuje inny szablon, który drukuje nierozwinięty wikikod ze składników przy pomocy parametrów, który po włączeniu do większego kodu, dopiero wtedy jest rozwijany, przykładem tego jest: {{s|Wybrane grupy książek}}. == {{Code|p.PowtarzajOdDo(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.PowtarzajOdDo=function(frame)...end; </syntaxhighlight> Funkcja tworzy wikikod do rozwinięcia, np. przez funkcję {{m|Ramka|Rozwiń}}, lub go rozwija na końcu, na podstawie kolejnych kroków iteracji: * {{Code|start}} - początek iteracji dokonywany przez ta funkcję, * {{Code|koniec}} - koniec iteracji dokonywany przez ta funkcję, * {{Code|krok}} - krok iteracji, co którynumer ma iterować, * {{Code|łącznik}} - szereg łączących elementy z wikikodem, a jak nie ma tego elementu podanego, to czy ma być oddzielony nową linią na podstawie zmiennej {{Code|nowa linia}}, a jeżeli to nawet nie jest podane, to podany ciąg jest łączony poprzez szereg pusty, * {{Code|nowa linia}} - szereg mówiący, czy ma łączyć szeregi kodem nową linią, jeżeli {{Code|łącznik}} nie jest podany, * {{Code|przeskok}} - dodatkowy krok, nie licząc jedynki, jak ma iterować ciąg, ** Ta zmienna w każdym kroku iteracji zależna jest od: {{Code|<nowiki>{{_}}</nowiki>}} i {{Code|<nowiki>{{ciąg}}</nowiki>}}, mówiąca o numerze jego kroku, * {{Code|nie rozwiń}} - niepusta wartość, wtedy kod nie jest rozwijany, jeśli uzyskany kod nie jest rozwijany, w końcowym etapie można go rozwinąć przy pomocy funkcji {{m|Ramka|Rozwiń}}, * {{Code|1}} - aktualny wikikod ze zmiennymi poniżej przedstawiający aktualny krok iteracji, z którego dla każdego elementu te ciągi są łaczone za pomocą łącznika. Zmienne w kodzie: {{Code|1}} i {{Code|przeskok}} (jeżeli podana), podstawiane w nich pewne zmienne, które zamiast nich pewne liczby coś symbolizujące: * {{Code|<nowiki>{{start}}</nowiki>}} - przyjmuje wartość {{Tt|1}}, * {{Code|<nowiki>{{koniec}}</nowiki>}} - przyjmuje wartość, który jest liczbą elementów w ciągu oddzielonych średnikami w zmiennej {{Code|ciąg}}, * {{Code|<nowiki>{{krok}}</nowiki>}} - przyjmuje wartość {{Tt|1}}. Zmienne inne za każdym krokiem iteracji, z których korzystają: {{Code|1}} i {{Code|przeskok}}: * {{Code|<nowiki>{{_}}</nowiki>}} - symbol, za którą jest podstawiana liczba przyjmująca aktualną wartość numeru iteracji. Przykładowym kodem jest kod, którego wikikod znajduje się szablonu w silniku: {{s|Chem/silnik}}, szablonu: {{s|Chem}}, przykłady działania tego kodu: * {{Code|{{s|Chem|C|n|H|2n&nbsp;+&nbsp;2}}}} → {{Tt|{{Chem|C|n|H|2n&nbsp;+&nbsp;2}}}} * {{Code|{{s|Chem|H|3|O|+}}}} → {{Tt|{{Chem|H|3|O|+}}}} * {{Code|{{s|Chem|SO|4|2-}}}} → {{Tt|{{Chem|SO|4|2-}}}} * {{Code|{{s|Chem|4|He}}}} → {{Tt|{{Chem|4|He}}}} * {{Code|{{s|Chem|4|2|He}}}} → {{Tt|{{Chem|4|2|He}}}} Na podstawie tej funkcji dokonano w szablonie {{s|Chem}}, że ona może przyjmować dowolną liczbę parametrów numerowanych. == {{Code|p["PrzetwarzajIterującCiąg"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["PrzetwarzajIterującCiąg"]=function(frame)...end; </syntaxhighlight> Funkcja do iteracji ciągu z wikikodem i pewnymi zmiennymi. * {{Code|ciąg}} - lista parametrów oddzielonych średnikami, z którego jest tworzona tablica z elementów pomiędzy srednikami, * {{Code|łącznik}} - szereg łączących elementy z wikikodem, a jak nie ma tego elementu podanego, to czy ma być oddzielony nową linią na podstawie zmiennej {{Code|nowa linia}}, a jeżeli to nawet nie jest podane, to podany ciąg jest łączony poprzez szereg pusty, * {{Code|nowa linia}} - szereg mówiący, czy ma łączyć szeregi kodem nową linią, jeżeli {{Code|łącznik}} nie jest podany, * {{Code|przeskok}} - dodatkowy krok, nie licząc jedynki, jak ma iterować ciąg, ** Ta zmienna w każdym kroku iteracji zależna jest od: {{Code|<nowiki>{{_}}</nowiki>}} i {{Code|<nowiki>{{ciąg}}</nowiki>}}, mówiąca o numerze jego kroku, * {{Code|nie rozwiń}} - niepusta wartość, wtedy kod nie jest rozwijany, jeśli uzyskany kod nie jest rozwijany, w końcowym etapie można go rozwinąć przy pomocy funkcji {{m|Ramka|Rozwiń}}, * {{Code|1}} - aktualny wikikod ze zmiennymi poniżej przedstawiający aktualny krok iteracji, z którego dla każdego elementu te ciągi są łaczone za pomocą łącznika. Zmienne w kodzie: {{Code|1}} i {{Code|przeskok}} (jeżeli podana), podstawiane w nich pewne zmienne, które zamiast nich pewne liczby coś symbolizujące: * {{Code|<nowiki>{{start}}</nowiki>}} - przyjmuje wartość {{Tt|1}}, * {{Code|<nowiki>{{koniec}}</nowiki>}} - przyjmuje wartość, który jest liczbą elementów w ciągu oddzielonych średnikami w zmiennej {{Code|ciąg}}, * {{Code|<nowiki>{{krok}}</nowiki>}} - przyjmuje wartość {{Tt|1}}. Zmienne inne za każdym krokiem iteracji, z których korzystają: {{Code|1}} i {{Code|przeskok}}: * {{Code|<nowiki>{{_}}</nowiki>}} - symbol, za którą jest podstawiana liczba przyjmująca aktualną wartość numeru iteracji, * {{Code|<nowiki>{{ciąg}}</nowiki>}} - jest to wartość pojedynczego elementu w {{Code|ciąg}}. Przykładowym kodem jest kod, którego część znajduje się tutaj, z szablonu {{s|Status}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|PrzetwarzajIterującCiąg | ciąg = {{{junior}}} | przeskok = 0 | 1 = {{((}}#if:{{((}}ciąg{{))}} {{!}}{{((}}#invoke:Ramka{{!}}Szablon {{!}}parametry funkcji modułu pudełek{{=}}tak {{!}}Nazwa{{=}}Kategoria{{!}}Wikijunior:{{((}}ucfirst:{{((}}ciąg{{))}}{{))}} {{))}} {{))}} }} </syntaxhighlight> Wartością w tym przypadku zmiennej szablonowej {{Code|<nowiki>{{{junior}}}</nowiki>}} może być: {{Parametr|junior|Owoce;Warzywa}}. Ta funkcja najpierw iteruje po wartości {{Code|Owoce}}, a później po {{Code|Warzywa}}. Powyższy kod, uzyskany w ten sposób wikikod, jest rozwijany za pomocą funkcji systemowej {{lpg|Lua}} w {{lpr|Lua|Scribunto}}: {{Code|pf:preprocess(lancuch)}}, jeśli: {{Code|nie rozwiń}}, nie przybiera wartości niepustej. == {{Code|p["PowtarzajWedług"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["PowtarzajWedług"] = function(frame)...end; </syntaxhighlight> Funkcja wyszukuje ile jest stron o danym wzorze, np.dla stron o podstawie „{{Ns:Template}}:Polecane książki/”:{{Parametr|wzór|{{Ns:Template}}:Polecane książki/{{((}}_{{))}}}}. * {{Code|start}} - od jakiej liczby ma liczyć strony (domyślną wartością jest {{Code|1}}, od której zaczyna się liczenie stron o podany wzorze numeracyjnym), * {{Code|wzór}} - wzór według tego, co ma sprawdzając, czy one pasują do niego. Parametr {{Code|wzór}} ma w sobie {{font|color=blue|<nowiki>{{_}}</nowiki>}}, za którą podstawiany jest numer w postaci liczby naturalnej innej niż zero. === Przykłady użycia === Przykład z tą funkcją znajduje się w kodzie w szablonie: {{s|Lista wybranych książek}}, która po wywołaniu wypluwa wynik: * Szablon wypluwający listę stron według wzoru w postaci tekstu: ** {{Code|{{s|Lista wybranych książek|Polecane książki}}}} → {{Tt|{{Lista wybranych książek|Polecane książki}}}} ** {{Code|{{s|Lista wybranych książek|Nowe podręczniki miesiąca}}}} → {{Tt|{{Lista wybranych książek|Nowe podręczniki miesiąca}}}} ** {{Code|{{s|Lista wybranych książek|Wyróżnienia książek miesiąca}}}} → {{Tt|{{Lista wybranych książek|Wyróżnienia książek miesiąca}}}} * Szablon wypluwający listę stron według wzoru w postaci linków: ** {{Code|{{s|Lista wybranych książek|Polecane książki|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Polecane książki|link=tak}}}} ** {{Code|{{s|Lista wybranych książek|Nowe podręczniki miesiąca|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Nowe podręczniki miesiąca|link=tak}}}} ** {{Code|{{s|Lista wybranych książek|Wyróżnienia książek miesiąca|link{{=}}tak}}}} → {{Tt|{{Lista wybranych książek|Wyróżnienia książek miesiąca|link=tak}}}} == {{Code|p["LiczbaPrawychUkośników"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["LiczbaPrawychUkośników"] = function(frame)...end; </syntaxhighlight> Szablon wyszukuje liczbę prawych ukośników w wielopoziomowym adresie strony. * {{Code|1}} - wielopoziomowy adres z ewentualnie prawymi ukośnikami. Jeżeli ten adres nie zawiera tych ukośników, to funkcja zwraca wartość {{Tt|0}}. === Przykład użycia === * {{Code|{{m|Ramka|LiczbaPrawychUkośników|1{{=}}Podstawia/Poziom_1/Poziom_2/Poziom_3/Poziom_4/Poziom_5}}}} → {{Tt|{{#invoke:Ramka|LiczbaPrawychUkośników|1=Podstawia/Poziom_1/Poziom_2/Poziom_3/Poziom_4/Poziom_5}}}} == {{Code|p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"] = function(frame)...end; </syntaxhighlight> Funkcja wyszukuje ile jest stron o danym wzorze, np.dla stron o podstawie „{{Ns:Template}}:Polecane książki/”:{{Parametr|wzór|{{Ns:Template}}:Polecane książki/{{((}}_{{))}}}}. * {{Code|start}} - od jakiej liczby ma liczyć strony (domyślną wartością jest {{Code|1}}, od której zaczyna się liczenie stron o podany wzorze numeracyjnym), * {{Code|wzór}} - wzór według tego, co ma sprawdzając, czy one pasują do niego. Parametr {{Code|wzór}} ma w sobie {{font|color=blue|<nowiki>{{_}}</nowiki>}}, za którą podstawiany jest numer w postaci liczby naturalnej innej niż zero. === Przykłady użycia === Przykład z tą funkcją znajduje się w kodzie w szablonie: {{s|Liczba list wybranych książek}}, która po wywołaniu wypluwa wynik: * {{Code|{{s|Liczba list wybranych książek|Polecane książki}}}} → {{Tt|{{Liczba list wybranych książek|Polecane książki}}}} * {{Code|{{s|Liczba list wybranych książek|Nowe podręczniki miesiąca}}}} → {{Tt|{{Liczba list wybranych książek|Nowe podręczniki miesiąca}}}} * {{Code|{{s|Liczba list wybranych książek|Wyróżnienia książek miesiąca}}}} → {{Tt|{{Liczba list wybranych książek|Wyróżnienia książek miesiąca}}}} == {{Code|p["MinimalnyNumerSpośródNieodpowiednikowychZmiennych"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p["MinimalnyNumerSpośródNieodpowiednikowychZmiennych"]=function(frame)...end; </syntaxhighlight> Szablon szuka minimalny numer wśród zmiennych szablonu o pewnej podstawie tego numerowanego schemacie "<zmienna>(%d*)". * {{Code|zmienna}} - podstawa parametru numerowanego liczbami lub ciągiem pustym, * {{Code|odpowiednik}} - czy ma zaufać jego odpowiednikowi nienazwanemu szablonu. Szablon przekształca wartość parametru {{Code|zmienna}} do czystego tekstu, względem wyrażeń regularnych {{lpr|Lua}}. Parametry: zmienna i odpowiednik, to parametry ramki. * Popatrz na definicję przykładu - szablonu: {{s|Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych}}. === Przykład przy pomocy szablonu z definicją z tą funkcją === * {{Code|{{s|Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych|zmienna{{=}}parametr|odpowiednik{{=}}|parametr3{{=}}tak|parametr5{{=}}tak|subnazwa=tak}}}} → {{Tt|{{Wikibooks/Przykład/MinimalnyNumerSpośródNieodpowiednikowychZmiennych|zmienna=parametr|odpowiednik=|parametr3=tak|parametr5=tak}}}} == {{Code|p.IleJestTakichNieodpowiednikowychZmiennych(frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.IleJestTakichNieodpowiednikowychZmiennych=function(frame)...end; </syntaxhighlight> Funkcja szuka wśród parametrów szablonu o pewnej podstawie tego numerowanego schemacie "<zmienna>(%d*)". * {{Code|zmienna}} - podstawa nazwowa parametru numerowanego, * {{Code|odpowiednik}} - czy ma ufać parametrowi nienazwanemu szablonu. Szablon przekształca wartość parametru {{Code|zmienna}} do czystego tekstu, względem wyrażeń regularnych {{lpg|Lua}}. Parametry: {{Code|zmienna}} i {{Code|odpowiednik}}, to parametry ramki. * Popatrz na definicję przykładu - szablonu: {{s|Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych}}. === Przykład przy pomocy szablonu z definicją z tą funkcją === * {{Code|{{s|Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych|zmienna{{=}}parametr|odpowiednik{{=}}|parametr1{{=}}tak|parametr2{{=}}tak|subnazwa=tak}}}} → {{Tt|{{Wikibooks/Przykład/IleJestTakichNieodpowiednikowychZmiennych|zmienna=parametr|odpowiednik=|parametr1=tak|parametr2=tak}}}} == {{Code|p["Parametr w tablicy nazw"](frame)}} == Funkcję uruchamia się w ramce jako dziecko w jakimś szablonie rodzicu. Skrótowa definicja funkcji jest: <syntaxhighlight lang="lua"> p["Parametr w tablicy nazw"]=function(frame)...end; </syntaxhighlight> Funkcja wywoływana w postaci ramki szuka parametru w tablicy podanych parametrów. * {{Code|parametry}} - lista parametrów oddzielonych średnikiem, * {{Code|pozycja}} - szukana lista w tablicy parametrów, * {{Code|od dużej}} - czy parametr i elementy listy mają być zamieniane od dużej litery. Funkcja, jeżeli wyszukała w tej tablic parametr (pozycję) zwraca wartość {{Code|tak}}, w przeciwnym wypadku zwraca {{Code|nil}}, wartość języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, która po transformacji na wikikod jest zamieniana na ciąg pusty. === Przykłady użycia funkcji === * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}parametr2}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=parametr2}}}} * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}parametr4}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=parametr4}}}} * {{Code|{{m|Ramka|Parametr w tablicy nazw|parametry{{=}}parametr1;parametr2;parametr3|pozycja{{=}}Parametr2|od dużej{{=}}tak}}}} → {{Tt|{{#invoke:Ramka|Parametr w tablicy nazw|parametry=parametr1;parametr2;parametr3|pozycja=Parametr2|od dużej=tak}}}} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> p20c4o76d57biwkvinektper4ocoy2x Wikibooks:Moduły/Szeregi 4 63251 538652 535357 2026-03-31T13:01:59Z Persino 2851 538652 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Szeregi}}|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ł służy do obsługi na ciągach (szeregach) języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local szeregi_modul=require("Module:Szeregi"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Na te stronie będziemy wchodzili do pliku: {{Code|Moduły/Szeregi}}, w przestrzeni nazw: {{Code|Wikibooks}}, a właściwie do jej zawartości. Przykładowe użycie modułu {{ld2|Szeregi}} jest użyty w module: {{ld2|Szablonowe/Potrzebne}}. == {{Code|p.WyszukiwanieNaPodstawieWzorca()}} == Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.WyszukiwanieNaPodstawieWzorca=function(szereg,wzor,numer,funkcja_wyszukiwanie,funkcja_wzor,licznik_wzor)...end; </syntaxhighlight> Funkcja wyszukuje począwszy od miejsca pierwszego (trzeci argument) szablo, czyli z podwójnymi nawiasami klamrowymi, a jeżeli w nim są początki innych szablonów, to wyszukuje kolejny dwa miejsca dalej względem poprzedniego wyszukiwania. <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); local numer_a,numer_b,zawartosc,dalej=szeregi_modul.WyszukiwanieNaPodstawieWzorca(tekst,"%{%{(.-)%}%}(%l*)",1, function(tekst,numer,licznik_wzor,numer_a,numer_b,zawartosc,dalej) return mw.ustring.match(zawartosc,"%{%{"),2; end, function(wzor,licznik_wzor,czy) -- Obojętne jaka definicja, ta funkcja ma definicję, bo w p.ZamianaZnakowaSzeregu jest ona tam potrzebna. end,1) </syntaxhighlight> * {{Code|numer_a}} - początek wyszukania, * {{Code|numer_b}} - koniec wyszukania. A {{Code|numer}} w czwartym argumencie (funkcji) ten parametr wskazany jest przez trzeci argument, czyli {{Code|1}}, a jeżeli pierwsze wyszukiwanie się nie powiodło się, ona wyszukuje następne, aż do całkowitego niepowodzenia, wtedy jest zwracana wartość {{Code|nil}}, ale przez tym liczba ponownym wyszukań może być dowolna, w zależności od długości tekstu. Funkcja ta zwraca dwa dalsze parametry, najwięcej dalszych parametrów (od {{Code|zawartość}}) może być dziewięć, taka bowiem jest właściwość funkcji: <syntaxhighlight lang="lua"> local numer_a,numer_b,a,b,c,d,e,f,g,h,i=mw.ustring.find(szereg,wzor,numer); </syntaxhighlight> Ta funkcja jest w definicji funkcji: {{Code|p.WyszukiwanieNaPodstawieWzorca()}}. Tę funkcję równie dobrze można napisać prościej: <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); local numer_a,numer_b,zawartosc,dalej=szeregi_modul.WyszukiwanieNaPodstawieWzorca(tekst,"%{%{(.-)%}%}(%l*)",1, function(tekst,numer,numer_a,numer_b,zawartosc,dalej) return mw.ustring.match(zawartosc,"%{%{"),2; end ) </syntaxhighlight> == {{Code|p.ZamianaZnakowaSzeregu()}} == Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> p.ZamianaZnakowaSzeregu=function(szereg,wzor,funkcja_wyszukiwanie,funkcja_zamiana,funkcja_wzor,funkcja_licznik)...end; </syntaxhighlight> Funkcja do podmiany wyszukiwanego tekstu. Wyszukuje tekst wskazany przez pierwszy argument, drugi parametr jako wzór (wyszukuj szablony z podwójnymi nawiasami klamrowymi), a jeżeli ona zawiera początek następnego szablonu (funkcja wskazana przez trzeci argument), to wyszukuje ona dwa miejsca dalej znakowe, czy jest on tym właściwym szablonem bez innych szablonów, których nie ma tam tego. Następnie po wyszukaniu szablonu przez funkcję podaną jako czwarty argument, usuwa w nim odstępy, i robi z niego inny szablon. Funkcja najpierw wyszukuje według piątej funkcji, dla {{Code|licznik_wzor{{=}}1}}, sprawdza dodatkowo, jakie są małe litery po linku, jeżeli po nim one są tam. <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); tekst=szeregi_modul.ZamianaZnakowaSzeregu(tekst,"%{%{(.-)%}%}", function(tekst,numer,licznik_wzor,numer_a,numer_b,zawartosc,dalej) return mw.ustring.match(zawartosc,"%{%{"),2; end, function(licznik_wzor,zawartosc,dalej) zawartosc=mw.ustring.gsub(zawartosc,"%s+",""); return "{{"..zawartosc.."}}"..((licznik_wzor==1)and dalej or ""); end, function(wzor,licznik_wzor,czy) if(czy)then if(licznik_wzor==1)then return wzor.."(%l*)",true;end; end; return wzor,false; end, function(wzor,licznk_wzor,numer_begin) licznik_wzor=licznik_wzor+1; return licznik_wzor; end ); </syntaxhighlight> A jeżeli piąty argument (funkcja) nie zostanie podany, a więc i też szósty, bo wtedy on jest niepotrzebny, to w czwartej funkcji argument pierwszy można pominąć, a w pierwszej zmienną trzecią pomijamy, bo w tych funkcjach po prostu ich nie podajemy, wtedy tę funkcję można napisać w uproszczony sposób: <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); tekst=szeregi_modul.ZamianaZnakowaSzeregu(tekst,"%{%{(.-)%}%}", function(tekst,numer,numer_a,numer_b,zawartosc) return mw.ustring.match(zawartosc,"%{%{"),2; end, function(zawartosc) zawartosc=mw.ustring.gsub(zawartosc,"%s+",""); return "[["..zawartosc.."]]"; end ); </syntaxhighlight> Ta funkcja zwraca zmodyfikowany tekst uzyskany z funkcji: {{Code|szeregi_modul.ZamianaZnakowaSzeregu}}. Tą funkcję możemy wykorzystać do kodowania dowolnego tekstui operowania na nim, co jest wykorzystane, nie tylko jako przykładach, ale też jako treściwy kod według tego wspomnianego w tym module powyżej. == {{Code|p.IteratorLiniiTekstu()}} == Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorLiniiTekstu(tekst)...end; </syntaxhighlight> Funkcja uzyskany tekst iteruje linia po linii według iteracji poniżej przy pomocy operacji {{Code|for}}, gdzie tam możemy robić operacje na liniach, by dodać je póżniej do tablicy linia, by je połączyć przy pomocy łącznika {{Code|\n}}. Poniższy kod robi to samo, co przykład dla funkcji {{Code|p.ZamianaZnakowaLinii()}}, tylko, że dłużej. <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); local iter=szeregi_modul.IteratorLiniiTekstu(tekst); local tab_linia={}; for linia in iter do linia=mw.ustring.gsub(linia,"%s+",""); table.insert(tab_linia,linia); end; tekst=table.concat(tab_linia,"\n"); </syntaxhighlight> == {{Code|p.ZamianaZnakowaLinii()}} == Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZamianaZnakowaLinii(szereg,funkcja)...end; </syntaxhighlight> Funkcja zamienia tekst uzyskany wstawiony do pierwszego argumentu tej funkcji, gdzie poszczególne linie są zmieniane przez anonimową funkcję podaną jako drugi argument. Jeżeli ta funkcja zwraca {{Code|nil}} dla jakieś linii, to ta linia nie jest zmieniana, tylko przypisywana. <syntaxhighlight lang="lua"> local title=mw.title.makeTitle("Wikibooks","Moduły/Szeregi"); local tekst=title:getContent(); local szeregi_modul=require("Module:Szeregi"); tekst=szeregi_modul.ZamianaZnakowaLinii(tekst,function(linia) local linia,ile=mw.ustring.gsub(linia,"%s+",""); if(ile>0)then return linia;end; return nil; end); </syntaxhighlight> Ta funkcja usuwa wszystkie odstępy w liniach, ale nie pomiędzy liniami. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> pn73f8gdoxjikvpwqry1vc3xhzaxpqf Wikibooks:Moduły/Skrót 4 63279 538646 535353 2026-03-31T12:14:39Z Persino 2851 /* {{Code|WykazSzablon}} */ 538646 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Skrót}}|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ł {{ld2|Skrót}} służy do krótszego operowania szablonami {{s|Kategoria}} i {{s|Kategorie}} przy pomocy funkcji {{m|Ramka|Szablon}} z dodatkowymi parametrami obsługiwanymi przez tę funkcję, które jawnie nie podajemy w funkcjach zawartych w tym module, ale które są podane są za to niejawnie w definicji tych procedur, aby do nich trafiały niektóre zmienne szablonu rodzica, w której została ona wywołana ta ramka, wtedy wywołanie tego szablonu wygląda na krótsze i estetyczne. Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local skrot_modul=require("Module:Skrót"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == {{Code|WykazSzablon()}} == Kod tej funkcji jest: <syntaxhighlight lang="lua"> local WykazSzablon=function(frame,szablon,czy_inne_kategorie)...end; </syntaxhighlight> Funkcja przyjmuje parametr tablicę ramki tablicy transportu, i drugi parametr, który jest nazwą podstawową szablonu, przyjmować może on jedynie wartości: {{Code|Kategoria}} i {{Code|Kategorie}}, trzeci, który może nie być podany lub przyjmować wartość {{Code|nil}}, albo przyjmować wartość {{Code|true}}. Te szablony przyjmują w module {{ld2|Skrót}} na pewno parametry: * {{Code|parametry podstawowe funkcji modułu pudełek}} - funkcja przyjmuje tylko parametry modułu pudełek {{ld2|Pudełko}}, * {{Code|bez dodatkowych sprawdzeń}} - funkcja wyłącza sprawdzanie (walidację) błędów w szablonie. Gdy drugi parametr tego szablonu jest {{Code|Kategoria}} (przyjmujący jedną kategorię), a trzeci {{Code|true}}, wtedy ten szablon jest zamieniany na {{Code|Kategorie}} (przyjmujący jako argumenty wiele kategorii), tak się dzieje, bo funkcja dodatkowo zwraca kategorie do szablonu, w którym on został wywołany, na stronie o takiej samej pełnej nazwie, co on. Funkcja uruchamia ramkę {{Code|{{m|Ramka|Szablon}}}} (opis tej funkcji jest w: {{sr|#p.Szablon()|p=Ramka}}), która dla szablonu, bez trzeciego parametru tej funkcji, {{Code|Kategoria}} wygląda jako, co jest równoważne wywołaniu ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategoria|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...}} </syntaxhighlight> A dla szablonu {{Code|Kategorie}} uruchamianie jego jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|_1=...|2=...|_2==...|...|<n>=...|_<n>=...|...}} </syntaxhighlight> * Gdzie {{Code|<n>}} to pewne liczba naturalna nie równa zero. A gdy trzeci parametr jest {{Code|true}}, a drugi {{Code|Kategoria}} lub {{Code|Kategorie}}, wtedy rozwijany jest wikikod równoważny temu, dla tego pierwszego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=Szablony dodające kategorie|_i=..}} </syntaxhighlight> A dla tego drugiego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=...|...|<n>=...|..|2=Szablony dodające kategorie}} </syntaxhighlight> Widzimy, jakie skomplikowane wywołania ta funkcja tworzy, a to jest wszystko ukryte pod nią, a my używając modułu {{ld2|Skrót}} możemy tworzyć proste wywołania, które są tłumaczone na skomplikowane. == {{Code|Kategoria}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria(frame) return WykazSzablon(frame,"Kategoria"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie(frame) return WykazSzablon(frame,"Kategorie"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> == {{Code|Kategoria2}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria2(frame) return WykazSzablon(frame,"Kategoria",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria2|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie2}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie2(frame) return WykazSzablon(frame,"Kategorie",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie2|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9ax3n57k8hiish21cdy7t8kjkiygt9a 538647 538646 2026-03-31T12:14:53Z Persino 2851 538647 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Skrót}}|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ł {{ld2|Skrót}} służy do krótszego operowania szablonami {{s|Kategoria}} i {{s|Kategorie}} przy pomocy funkcji {{m|Ramka|Szablon}} z dodatkowymi parametrami obsługiwanymi przez tę funkcję, które jawnie nie podajemy w funkcjach zawartych w tym module, ale które są podane są za to niejawnie w definicji tych procedur, aby do nich trafiały niektóre zmienne szablonu rodzica, w której została ona wywołana ta ramka, wtedy wywołanie tego szablonu wygląda na krótsze i estetyczne. Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local skrot_modul=require("Module:Skrót"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == {{Code|WykazSzablon()}} == Kod tej funkcji jest: <syntaxhighlight lang="lua"> local WykazSzablon=function(frame,szablon,czy_inne_kategorie)...end; </syntaxhighlight> Funkcja przyjmuje parametr tablicę ramki tablicy transportu, i drugi parametr, który jest nazwą podstawową szablonu, przyjmować może on jedynie wartości: {{Code|Kategoria}} i {{Code|Kategorie}}, trzeci, który może nie być podany lub przyjmować wartość {{Code|nil}}, albo przyjmować wartość {{Code|true}}. Te szablony przyjmują w module {{ld2|Skrót}} na pewno parametry: * {{Code|parametry podstawowe funkcji modułu pudełek}} - funkcja przyjmuje tylko parametry modułu pudełek {{ld2|Pudełko}}, * {{Code|bez dodatkowych sprawdzeń}} - funkcja wyłącza sprawdzanie (walidację) błędów w szablonie. Gdy drugi parametr tego szablonu jest {{Code|Kategoria}} (przyjmujący jedną kategorię), a trzeci {{Code|true}}, wtedy ten szablon jest zamieniany na {{Code|Kategorie}} (przyjmujący jako argumenty wiele kategorii), tak się dzieje, bo funkcja dodatkowo zwraca kategorie do szablonu, w którym on został wywołany, na stronie o takiej samej pełnej nazwie, co on. Funkcja uruchamia ramkę {{Code|{{m|Ramka|Szablon}}}} (opis tej funkcji jest w: {{sr|#p.Szablon()|p=Ramka}}), która dla szablonu, bez trzeciego parametru tej funkcji, {{Code|Kategoria}} wygląda jako, co jest równoważne wywołaniu ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategoria|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...}} </syntaxhighlight> A dla szablonu {{Code|Kategorie}} uruchamianie jego jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|_1=...|2=...|_2==...|...|<n>=...|_<n>=...|...}} </syntaxhighlight> * Gdzie {{Code|<n>}} to pewne liczba naturalna nie równa zero. A gdy trzeci parametr jest {{Code|true}}, a drugi {{Code|Kategoria}} lub {{Code|Kategorie}}, wtedy rozwijany jest wikikod równoważny temu, dla tego pierwszego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=Szablony dodające kategorie|_i=..}} </syntaxhighlight> A dla tego drugiego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=...|...|<n>=...|..|2=Szablony dodające kategorie}} </syntaxhighlight> Widzimy, jakie skomplikowane wywołania ta funkcja tworzy, a to jest wszystko ukryte pod nią, a my używając modułu {{ld2|Skrót}} możemy tworzyć proste wywołania, które są tłumaczone na skomplikowane. == {{Code|Kategoria}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria(frame) return WykazSzablon(frame,"Kategoria"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie(frame) return WykazSzablon(frame,"Kategorie"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> == {{Code|Kategoria2}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria2(frame) return WykazSzablon(frame,"Kategoria",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria2|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie2}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie2(frame) return WykazSzablon(frame,"Kategorie",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie2|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> nj19qczmtrbzga3xzrnrtfu67l9wur6 538648 538647 2026-03-31T12:16:41Z Persino 2851 538648 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Skrót}}|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ł {{ld2|Skrót}} służy do krótszego operowania szablonami {{s|Kategoria}} i {{s|Kategorie}} przy pomocy funkcji {{m|Ramka|Szablon}} z dodatkowymi parametrami obsługiwanymi przez tę funkcję, które jawnie nie podajemy w funkcjach zawartych w tym module, ale które są podane są za to niejawnie w definicji tych procedur, aby do nich trafiały niektóre zmienne szablonu rodzica, w której została ona wywołana ta ramka, wtedy wywołanie tego szablonu wygląda na krótsze i estetyczne. Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local skrot_modul=require("Module:Skrót"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == {{Code|WykazSzablon()}} == Kod tej funkcji jest: <syntaxhighlight lang="lua"> local WykazSzablon=function(frame,szablon,czy_inne_kategorie)...end; </syntaxhighlight> Funkcja przyjmuje parametr tablicę ramki tablicy transportu, i drugi parametr, który jest nazwą podstawową szablonu, przyjmować może on jedynie wartości: {{Code|Kategoria}} i {{Code|Kategorie}}, trzeci, który może nie być podany lub przyjmować wartość {{Code|nil}}, albo przyjmować wartość {{Code|true}}. Te szablony przyjmują w module {{ld2|Skrót}} na pewno parametry: * {{Code|parametry podstawowe funkcji modułu pudełek}} - funkcja przyjmuje tylko parametry modułu pudełek {{ld2|Pudełko}}, * {{Code|bez dodatkowych sprawdzeń}} - funkcja wyłącza sprawdzanie (walidację) błędów w szablonie. Gdy drugi parametr tego szablonu jest {{Code|Kategoria}} (przyjmujący jedną kategorię), a trzeci {{Code|true}}, wtedy ten szablon jest zamieniany na {{Code|Kategorie}} (przyjmujący jako argumenty wiele kategorii), tak się dzieje, bo funkcja dodatkowo zwraca kategorie do szablonu, w którym on został wywołany, na stronie o takiej samej pełnej nazwie, co on. Funkcja uruchamia ramkę {{Code|{{m|Ramka|Szablon}}}} (opis tej funkcji jest w: {{sr|#p.Szablon()|p=Ramka}}), która dla szablonu, bez trzeciego parametru tej funkcji, {{Code|Kategoria}} wygląda jako, co jest równoważne wywołaniu ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategoria|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...}} </syntaxhighlight> A dla szablonu {{Code|Kategorie}} uruchamianie jego jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|_1=...|2=...|_2==...|...|<n>=...|_<n>=...|...}} </syntaxhighlight> * Gdzie {{Code|<n>}} to pewne liczba naturalna nie równa zero. A gdy trzeci parametr jest {{Code|true}}, a drugi {{Code|Kategoria}} lub {{Code|Kategorie}}, wtedy rozwijany jest wikikod równoważny temu, dla tego pierwszego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=Szablony dodające kategorie|_i=..}} </syntaxhighlight> A dla tego drugiego szablonu: <syntaxhighlight lang="mediawiki"> {{#invoke:Ramka|Szablon|Nazwa=Kategorie|parametry podstawowe funkcji modułu pudełek=tak|bez dodatkowych sprawdzeń=tak|1=...|2=...|...|<n>=...|..|2=Szablony dodające kategorie}} </syntaxhighlight> Widzimy, jakie skomplikowane wywołania ta funkcja tworzy, a to jest wszystko ukryte pod nią, a my używając modułu {{ld2|Skrót}} możemy tworzyć proste wywołania, które są tłumaczone na skomplikowane. == {{Code|Kategoria(frame)}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria(frame) return WykazSzablon(frame,"Kategoria"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie(frame)}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania bez funkcji zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie(frame) return WykazSzablon(frame,"Kategorie"); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> == {{Code|Kategoria2(frame)}} == Funkcja przyjmuje jedną tylko nazwę kategorii i jego nazwę sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja tworzy skomplikowane wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategoria2(frame) return WykazSzablon(frame,"Kategoria",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategoria2|<kategoria>|<nazwa sortowania>}} </syntaxhighlight> == {{Code|Kategorie2(frame)}} == Funkcja przyjmuje wiele nazw kategorii i ich nazwy sortowania, a zwraca zestaw gotowych kategorii do uruchomienia. Ta funkcja skomplikowane tworzy wywołania z funkcją zwracania kategorii: {{Code|{{lk2|Szablony dodające kategorie}}}}, a więc: <syntaxhighlight lang="lua"> function p.Kategorie2(frame) return WykazSzablon(frame,"Kategorie",true); end; </syntaxhighlight> A wywołanie funkcji w ramce wygląda według przykładu: <syntaxhighlight lang="mediawiki"> {{#invoke:Skrót|Kategorie2|1=<kategoria 1>|_1=<nazwa sortowania 1>|2=<kategoria 2>|_2=<nazwa sortowania 2>|...}} </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 95a6jpstpp4me6a435mdsunv5vy3l3y Wikibooks:Moduły/Sekcja referencyjna 4 63280 538649 535465 2026-03-31T12:18:09Z Persino 2851 /* {{Code|p["Sekcja referencyjna"]()}} */ 538649 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Sekcja referencyjna}}|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 sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Ta funkcja o nazwie: {{Code|{{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}}}, jak i szablon: {{Code|{{s|Sekcja referencyjna}}}} (lub jego wersja skrótowa: {{Code|{{s|sr}}}} - w postaci przekierowania do jego dłuższej wersji), służy do wyświetlania na normalnej lub stronie zbiorczej linków inteligentnych danego podręcznika, jeżeli podamy jego artykuł wraz z, lub bez, nagłówkiem, lub nagłówek z hashem, z artykułem w zmiennej w: {{Code|podstrona}} (lub ten parametr podany w wersji skrótowej {{Code|p}}), też można linkować do strony głównej podręcznika, nie podając żadnego artykułu w funkcji w: {{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}, w zmiennej: {{Code|strona}} (lub w wersji jego skrótowej {{Code|s}}), i w zmiennej w jego pierwszym parametrze numerowanym, lub w jego wersji szablonowej. Ta funkcja lub jego odpowiednik szablonowy wyświetla na stronie normalnej artykułu link do artykułu, a na stronie zbiorczej link do identyfikatora jakiegoś obiektu na stronie. Inne funkcje użyte w module: {{Code|{{ld2|Sekcja referencyjna}}}}, są funkcjami pomocniczymi do głównej jego funkcji, która służy do wywołania w ramce w jego odpowiedniku szablonowym, podany tutaj na samym początku tej strony, te funkcje służą też do użycia w innych modułach, np.: {{ld2|StronicowyParser/Potrzebne}}. Funkcje tutaj opisują obsługę linków inteligentnych (tzw. linki inteligentne), który koloruje linki w zależności do jakiej kategorii szablon zaliczy stronę wskazaną w nim. Zestaw możliwych kodów linkowych, znajduje się na stronie {{s|Link wewnętrzny}}, w miejscu pod tabelą nawigacyjną {{s|Tabela nawigacyjna}}, według jego wikikodu opisu. === Dlaczego te funkcje w opisywanym module, jak i szablon, o który jest zdefiniowany === Moduł {{ld2|Sekcja referencyjna}}, i też szablon {{s|Sekcja referencyjna}} (używany w postaci przekierowania do niego {{s|sr}}), który wykorzystuje ten moduł do swojej definicji, zostały stworzone do używania w spisach treści, oraz wewnątrz zwyczajnych stron książki jako odnośnik do sekcji (rozdziału/podrozdziału/itp.). Ideą tego modułu (szablonu) było rozwiązanie pewnego problemu pojawiającego się, gdy strona zostanie wydrukowana w formie PDF-a. Normalnie, gdy spis treści zawiera linki do rozdziałów tworzonych normalnym sposobem (przez wikilinki), to w wydrukowanej formie te linki zostają odnośnikami bezwzględnymi do strony Wikibooks. Gdy użytkownik kliknie w taki link w PDF-ie, to zostanie przekierowany do przeglądarki WWW z otwartą stroną Wikibooks. Psuje to użytkowanie takiej strony, gdyż użytkownik zazwyczaj zakłada, że gdy kliknie na odnośnik w spisie treści, to ten przeniesie go na odpowiednią stronę ''wewnątrz'' PDF-a. Ten moduł (szablon) rozwiązuje ten problem, przez warunkową zamianę linków do stron sekcji w linki lokalne do sekcji wewnątrz strony do druku. W niektórych generatorach PDF-a taka zamiana skutkuje tym, że takie linki umieszczone w spisach treści, powodują przeniesienie do odpowiedniej strony, a nie przeskok do strony WWW (pozostałe generatory po prostu nie generują linków w ogóle). == {{Code|p.Indentyfikator_lub_podstrona_wikiadresu_strony()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Indentyfikator_lub_podstrona_wikiadresu_strony(ustep,czy_ustep)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|ustep}} - nazwa strony ustępu strony, co z niego robimy nazwę linku, * {{Code|czy_ustep}} - jeżeli {{Code|true}} liczy wtedy nagłówek, a jeżeli tego nie ma to podstronę. Jeżeli {{Code|ustep{{=}}nil}}, w takim razie jest zwracana wartość parametru tego, czyli {{Code|nil}}. Aby nie uzyskać identyfikatora strony, to drugi parametr, czyli {{Code|czy_ustep}}, nie może przyjmować wartości logicznej {{Code|true}}, tylko jako {{Code|false}} lub {{Code|nil}} - wtedy zwracana jest wartość argumentu {{Code|ustęp}}. A jeżeli podamy wartość {{Code|true}}, gdy zmienna {{Code|ustep}} zawiera nagłówek, to zwracany jest właśnie on bez znaku {{Code|#}}, a jeżeli nie zawiera on tego, tylko podstronę, wtedy zwracana jest jego podstrona. W przeciwny wypadku zwracana jest sama wartość argumentu {{Code|ustep}}. == {{Code|p.Nazwa_od_niewielkiej_lub_wielkiej_litery()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Nazwa_od_niewielkiej_lub_wielkiej_litery(nazwa,od_malej,od_duzej)...end; </syntaxhighlight> Oto parametry tej funkcji: * {{Code|nazwa}} - nazwa linku strony, * {{Code|od malej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na małą literę, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być nie {{Code|true}}. W przeciwny wypadku funkcja zwraca samą nieprzekształconą nazwę strony. == {{Code|p.Strona_zbiorcza()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Strona_zbiorcza(strona,podstrona,nazwa,czy_ustep,czy_pod_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - nieopcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}}- jest to nazwa linku, jaka ma być wyświetlana - opcjonalna, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny, * {{Code|czy_pod_ustep}} - czy ma liczyć nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy ustęp strony linku, z którego tworzymy nagłówek strony linku, który możliwie ma być na stronie zbiorczej - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Nagłówek strony jest tworzony z {{Code|pelnanazwajednostki}}, {{Code|strona}} i {{Code|podstrona}}, także na podstawie parametru {{Code|czy_pod_ustep}} Wartości opcjonalne powyżej przyjmują wartość {{Code|nil}}, wtedy możemy je uznać tak, jak by je, nie podaliśmy. Funkcja zwraca trzy parametry jednocześnie, czyli nazwę strony, jego nagłówek i nazwę linku. == {{Code|p.Wolumin()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Wolumin(strona,podstrona,nazwa,czy_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - opcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}} - jest to nazwa linku, jaka ma być wyświetlana - opcjonalny, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Funkcja zwraca dwa parametry jednocześnie, czyli policzoną nazwę strony i nazwę linku. == {{Code|p["Sekcja referencyjna"](frame)}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> p["Sekcja referencyjna"]=function(frame)...end; </syntaxhighlight> Parametrami tablicy ramki modułu, które są podane w rodzicu w szablonie lub w samej ramce, jeżeli jest podany parametr {{Parametr|wyspecjalizowana|tak}} w samej ramce, a one są: * {{Code|1}}, {{Code|s}} lub {{Code|strona}} - jest to artykuł w podręczniku, ewentualnie z nagłówkiem, * {{Code|2}}, {{Code|n}} lub {{Code|nazwa}} - nazwa linku wyświetlana w artykule, * {{Code|3}}, {{Code|p}} lub {{Code|podstrona}} - podstrona dodawana do linku podczas rozważać, wtedy artykuł, będzie o jeden lub wyżej, głębiej w drzewie danej przestrzeni nazw, * {{Code|4}}. {{Code|u}} lub {{Code|ustęp}} - jeśli przyjmuje wartość niepustą, to nazwa wyświetlana linku jest jego nagłówek, jeżeli istnieje, lub jego podstrona albo sama strona, w przypadku przestrzeni nazw {{Np|(main)|link=tak}} i {{Np|Wikijunior|link=tak}} oraz nibyprzestrzeni nazw {{lr2|Brudnopis}}, w przestrzeni nazw {{Np|Project|link=tak}}, a także przestrzeni użytkownika {{Np|User|link=tak}}, a w przypadku nie podania nazwy strony {{Code|strona}} (lub jego skrót: {{Code|s}}) lub {{Code|1}}, to parametr {{Code|ustęp}} zachowuje się odwrotnie, wtedy nazwę strony, do której linkuje szablon, przyjmujemy domyślnie, że jest to nazwa książki, w przestrzeniach nazw w dwóch pierwszych nie widać różnicy działania tego parametru, już jest różnica w nibyprzestrzeniach nazw dwóch ostatnich, tutaj ten szablon podaje subnazwę książki, a nie jego adres, gdzie przy {{Parametr|ustęp|tak}} (lub jego synonim numerowany: {{Parametr|4|tak}}) (lub jego skrót: {{Parametr|u|tak}}) podaje cały adres, * {{Code|m}}, {{Code|od małej}} - jeśli niepuste, wyświetlany jest link od małej litery, * {{Code|d}}, {{Code|od dużej}} - jeśli niepuste, wyświetlany jest link od dużej litery, * {{Code|t}}, {{Code|pod-ustęp}} - na stronach zbiorczych skraca nazwę nagłówka, która na stronie artykułów podręcznika byłaby nazwą strony, do substrony. Te parametry powyżej są jednocześnie parametrami szablonu {{s|Sekcja referencyjna}} (lub jego wersji skrótowej {{s|sr}}). Te parametry możemy podać też w formie funkcyjnej: <syntaxhighlight lang="lua"> local sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); local link=sekcja_referencyjna_modul["Sekcja referencyjna"]{args={strona=..., nazwa=.., podstrona=..., ...}}; </syntaxhighlight> W ramce funkcyjnej parametry ze znakami nienależącymi do alfabetu łacińskiego piszmy w cudzysłowach w nawiasach kwadratowych, czyli w formie: {{Code|["pod-ustęp"]{{=}}...}}, czy parametry numerowe w nawiasach bez cudzysłowu: {{Code|[1]{{=}}...}}, a parametry normalne piszemy: {{Code|strona{{=}}...}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8e2br5bvnd4txpf7r2c8gduon26nyqi 538684 538649 2026-03-31T18:46:07Z Persino 2851 /* {{Code|p["Sekcja referencyjna"](frame)}} */ 538684 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Sekcja referencyjna}}|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 sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Ta funkcja o nazwie: {{Code|{{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}}}, jak i szablon: {{Code|{{s|Sekcja referencyjna}}}} (lub jego wersja skrótowa: {{Code|{{s|sr}}}} - w postaci przekierowania do jego dłuższej wersji), służy do wyświetlania na normalnej lub stronie zbiorczej linków inteligentnych danego podręcznika, jeżeli podamy jego artykuł wraz z, lub bez, nagłówkiem, lub nagłówek z hashem, z artykułem w zmiennej w: {{Code|podstrona}} (lub ten parametr podany w wersji skrótowej {{Code|p}}), też można linkować do strony głównej podręcznika, nie podając żadnego artykułu w funkcji w: {{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}, w zmiennej: {{Code|strona}} (lub w wersji jego skrótowej {{Code|s}}), i w zmiennej w jego pierwszym parametrze numerowanym, lub w jego wersji szablonowej. Ta funkcja lub jego odpowiednik szablonowy wyświetla na stronie normalnej artykułu link do artykułu, a na stronie zbiorczej link do identyfikatora jakiegoś obiektu na stronie. Inne funkcje użyte w module: {{Code|{{ld2|Sekcja referencyjna}}}}, są funkcjami pomocniczymi do głównej jego funkcji, która służy do wywołania w ramce w jego odpowiedniku szablonowym, podany tutaj na samym początku tej strony, te funkcje służą też do użycia w innych modułach, np.: {{ld2|StronicowyParser/Potrzebne}}. Funkcje tutaj opisują obsługę linków inteligentnych (tzw. linki inteligentne), który koloruje linki w zależności do jakiej kategorii szablon zaliczy stronę wskazaną w nim. Zestaw możliwych kodów linkowych, znajduje się na stronie {{s|Link wewnętrzny}}, w miejscu pod tabelą nawigacyjną {{s|Tabela nawigacyjna}}, według jego wikikodu opisu. === Dlaczego te funkcje w opisywanym module, jak i szablon, o który jest zdefiniowany === Moduł {{ld2|Sekcja referencyjna}}, i też szablon {{s|Sekcja referencyjna}} (używany w postaci przekierowania do niego {{s|sr}}), który wykorzystuje ten moduł do swojej definicji, zostały stworzone do używania w spisach treści, oraz wewnątrz zwyczajnych stron książki jako odnośnik do sekcji (rozdziału/podrozdziału/itp.). Ideą tego modułu (szablonu) było rozwiązanie pewnego problemu pojawiającego się, gdy strona zostanie wydrukowana w formie PDF-a. Normalnie, gdy spis treści zawiera linki do rozdziałów tworzonych normalnym sposobem (przez wikilinki), to w wydrukowanej formie te linki zostają odnośnikami bezwzględnymi do strony Wikibooks. Gdy użytkownik kliknie w taki link w PDF-ie, to zostanie przekierowany do przeglądarki WWW z otwartą stroną Wikibooks. Psuje to użytkowanie takiej strony, gdyż użytkownik zazwyczaj zakłada, że gdy kliknie na odnośnik w spisie treści, to ten przeniesie go na odpowiednią stronę ''wewnątrz'' PDF-a. Ten moduł (szablon) rozwiązuje ten problem, przez warunkową zamianę linków do stron sekcji w linki lokalne do sekcji wewnątrz strony do druku. W niektórych generatorach PDF-a taka zamiana skutkuje tym, że takie linki umieszczone w spisach treści, powodują przeniesienie do odpowiedniej strony, a nie przeskok do strony WWW (pozostałe generatory po prostu nie generują linków w ogóle). == {{Code|p.Indentyfikator_lub_podstrona_wikiadresu_strony()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Indentyfikator_lub_podstrona_wikiadresu_strony(ustep,czy_ustep)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|ustep}} - nazwa strony ustępu strony, co z niego robimy nazwę linku, * {{Code|czy_ustep}} - jeżeli {{Code|true}} liczy wtedy nagłówek, a jeżeli tego nie ma to podstronę. Jeżeli {{Code|ustep{{=}}nil}}, w takim razie jest zwracana wartość parametru tego, czyli {{Code|nil}}. Aby nie uzyskać identyfikatora strony, to drugi parametr, czyli {{Code|czy_ustep}}, nie może przyjmować wartości logicznej {{Code|true}}, tylko jako {{Code|false}} lub {{Code|nil}} - wtedy zwracana jest wartość argumentu {{Code|ustęp}}. A jeżeli podamy wartość {{Code|true}}, gdy zmienna {{Code|ustep}} zawiera nagłówek, to zwracany jest właśnie on bez znaku {{Code|#}}, a jeżeli nie zawiera on tego, tylko podstronę, wtedy zwracana jest jego podstrona. W przeciwny wypadku zwracana jest sama wartość argumentu {{Code|ustep}}. == {{Code|p.Nazwa_od_niewielkiej_lub_wielkiej_litery()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Nazwa_od_niewielkiej_lub_wielkiej_litery(nazwa,od_malej,od_duzej)...end; </syntaxhighlight> Oto parametry tej funkcji: * {{Code|nazwa}} - nazwa linku strony, * {{Code|od malej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na małą literę, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być nie {{Code|true}}. W przeciwny wypadku funkcja zwraca samą nieprzekształconą nazwę strony. == {{Code|p.Strona_zbiorcza()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Strona_zbiorcza(strona,podstrona,nazwa,czy_ustep,czy_pod_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - nieopcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}}- jest to nazwa linku, jaka ma być wyświetlana - opcjonalna, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny, * {{Code|czy_pod_ustep}} - czy ma liczyć nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy ustęp strony linku, z którego tworzymy nagłówek strony linku, który możliwie ma być na stronie zbiorczej - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Nagłówek strony jest tworzony z {{Code|pelnanazwajednostki}}, {{Code|strona}} i {{Code|podstrona}}, także na podstawie parametru {{Code|czy_pod_ustep}} Wartości opcjonalne powyżej przyjmują wartość {{Code|nil}}, wtedy możemy je uznać tak, jak by je, nie podaliśmy. Funkcja zwraca trzy parametry jednocześnie, czyli nazwę strony, jego nagłówek i nazwę linku. == {{Code|p.Wolumin()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Wolumin(strona,podstrona,nazwa,czy_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - opcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}} - jest to nazwa linku, jaka ma być wyświetlana - opcjonalny, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Funkcja zwraca dwa parametry jednocześnie, czyli policzoną nazwę strony i nazwę linku. == {{Code|p["Sekcja referencyjna"](frame)}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> p["Sekcja referencyjna"]=function(frame)...end; </syntaxhighlight> Parametrami tablicy ramki modułu, które są podane w rodzicu w szablonie lub w samej ramce, jeżeli jest podany parametr {{Parametr|wyspecjalizowana|tak}} w samej ramce, a one są: * {{Code|1}}, {{Code|s}} lub {{Code|strona}} - jest to artykuł w podręczniku, ewentualnie z nagłówkiem, * {{Code|2}}, {{Code|n}} lub {{Code|nazwa}} - nazwa linku wyświetlana w artykule, * {{Code|3}}, {{Code|p}} lub {{Code|podstrona}} - podstrona dodawana do linku podczas rozważać, wtedy artykuł, będzie o jeden lub wyżej, głębiej w drzewie danej przestrzeni nazw, * {{Code|4}}. {{Code|u}} lub {{Code|ustęp}} - jeśli przyjmuje wartość niepustą, to nazwa wyświetlana linku jest jego nagłówek, jeżeli istnieje, lub jego podstrona albo sama strona, w przypadku przestrzeni nazw {{Np|(main)|link=tak}} i {{Np|Wikijunior|link=tak}} oraz nibyprzestrzeni nazw {{lr2|Brudnopis}}, w przestrzeni nazw {{Np|Project|link=tak}}, a także przestrzeni użytkownika {{Np|User|link=tak}}, a w przypadku nie podania nazwy strony {{Code|strona}} (lub jego skrót: {{Code|s}}) lub {{Code|1}}, to parametr {{Code|ustęp}} zachowuje się odwrotnie, wtedy nazwę strony, do której linkuje szablon, przyjmujemy domyślnie, że jest to nazwa książki, w przestrzeniach nazw w dwóch pierwszych nie widać różnicy działania tego parametru, już jest różnica w nibyprzestrzeniach nazw dwóch ostatnich, tutaj ten szablon podaje subnazwę książki, a nie jego adres, gdzie przy {{Parametr|ustęp|tak}} (lub jego synonim numerowany: {{Parametr|4|tak}}) (lub jego skrót: {{Parametr|u|tak}}) podaje cały adres, * {{Code|m}}, {{Code|od małej}} - jeśli niepuste, wyświetlany jest link od małej litery, * {{Code|d}}, {{Code|od dużej}} - jeśli niepuste, wyświetlany jest link od dużej litery, * {{Code|t}}, {{Code|pod-ustęp}} - na stronach zbiorczych skraca nazwę nagłówka, która na stronie artykułów podręcznika byłaby nazwą strony, do substrony. Te parametry powyżej są jednocześnie parametrami szablonu {{s|Sekcja referencyjna}} (lub jego wersji skrótowej {{s|sr}}). Te parametry możemy podać też w formie funkcyjnej: <syntaxhighlight lang="lua"> local sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); local link=sekcja_referencyjna_modul["Sekcja referencyjna"]{args={strona=..., nazwa=.., podstrona=..., ...}}; </syntaxhighlight> W ramce funkcyjnej parametry ze znakami nienależącymi do alfabetu łacińskiego piszmy w cudzysłowach w nawiasach kwadratowych, czyli w formie: {{Code|["pod-ustęp"]{{=}}...}}, czy parametry numerowe w nawiasach bez cudzysłowu: {{Code|[1]{{=}}...}}, a parametry normalne piszemy: {{Code|strona{{=}}...}}. Funkcja w uruchamianiu ma dwa warianty, na normalnej stronie niezbiorczej uruchamiana jest funkcja {{Code|{{sr|#p.Wolumin()|p=Sekcja referencyjna}}}}, a na jakikolwiek stronie zbiorczej według Stronicowego parsera {{Code|{{m|StronicowyParser/StronaSubst}}}} jest uruchamiana funkcja: {{Code|{{sr|#p.Strona_zbiorcza()|p=Sekcja referencyjna}}}} (wtedy jest uruchamiana funkcja: {{Code|{{m|StronicowyParser|CzyStronaSubst}}}}, która zwraca wynik {{Code|tak}}, gdy strona dana jest bieżąca lub podana na podstawie parametrów pudełkowych: {{Code|{{m|Pudełko}}}}, która jest stroną zbiorczą, w przeciwnym wypadku mamy wynik: {{Code|nil}}, gdy nie). {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> qcpog8l7t9epdjuqbet2h13z61iesql 538685 538684 2026-03-31T18:48:59Z Persino 2851 /* {{Code|p["Sekcja referencyjna"](frame)}} */ 538685 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Sekcja referencyjna}}|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 sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Ta funkcja o nazwie: {{Code|{{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}}}, jak i szablon: {{Code|{{s|Sekcja referencyjna}}}} (lub jego wersja skrótowa: {{Code|{{s|sr}}}} - w postaci przekierowania do jego dłuższej wersji), służy do wyświetlania na normalnej lub stronie zbiorczej linków inteligentnych danego podręcznika, jeżeli podamy jego artykuł wraz z, lub bez, nagłówkiem, lub nagłówek z hashem, z artykułem w zmiennej w: {{Code|podstrona}} (lub ten parametr podany w wersji skrótowej {{Code|p}}), też można linkować do strony głównej podręcznika, nie podając żadnego artykułu w funkcji w: {{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}, w zmiennej: {{Code|strona}} (lub w wersji jego skrótowej {{Code|s}}), i w zmiennej w jego pierwszym parametrze numerowanym, lub w jego wersji szablonowej. Ta funkcja lub jego odpowiednik szablonowy wyświetla na stronie normalnej artykułu link do artykułu, a na stronie zbiorczej link do identyfikatora jakiegoś obiektu na stronie. Inne funkcje użyte w module: {{Code|{{ld2|Sekcja referencyjna}}}}, są funkcjami pomocniczymi do głównej jego funkcji, która służy do wywołania w ramce w jego odpowiedniku szablonowym, podany tutaj na samym początku tej strony, te funkcje służą też do użycia w innych modułach, np.: {{ld2|StronicowyParser/Potrzebne}}. Funkcje tutaj opisują obsługę linków inteligentnych (tzw. linki inteligentne), który koloruje linki w zależności do jakiej kategorii szablon zaliczy stronę wskazaną w nim. Zestaw możliwych kodów linkowych, znajduje się na stronie {{s|Link wewnętrzny}}, w miejscu pod tabelą nawigacyjną {{s|Tabela nawigacyjna}}, według jego wikikodu opisu. === Dlaczego te funkcje w opisywanym module, jak i szablon, o który jest zdefiniowany === Moduł {{ld2|Sekcja referencyjna}}, i też szablon {{s|Sekcja referencyjna}} (używany w postaci przekierowania do niego {{s|sr}}), który wykorzystuje ten moduł do swojej definicji, zostały stworzone do używania w spisach treści, oraz wewnątrz zwyczajnych stron książki jako odnośnik do sekcji (rozdziału/podrozdziału/itp.). Ideą tego modułu (szablonu) było rozwiązanie pewnego problemu pojawiającego się, gdy strona zostanie wydrukowana w formie PDF-a. Normalnie, gdy spis treści zawiera linki do rozdziałów tworzonych normalnym sposobem (przez wikilinki), to w wydrukowanej formie te linki zostają odnośnikami bezwzględnymi do strony Wikibooks. Gdy użytkownik kliknie w taki link w PDF-ie, to zostanie przekierowany do przeglądarki WWW z otwartą stroną Wikibooks. Psuje to użytkowanie takiej strony, gdyż użytkownik zazwyczaj zakłada, że gdy kliknie na odnośnik w spisie treści, to ten przeniesie go na odpowiednią stronę ''wewnątrz'' PDF-a. Ten moduł (szablon) rozwiązuje ten problem, przez warunkową zamianę linków do stron sekcji w linki lokalne do sekcji wewnątrz strony do druku. W niektórych generatorach PDF-a taka zamiana skutkuje tym, że takie linki umieszczone w spisach treści, powodują przeniesienie do odpowiedniej strony, a nie przeskok do strony WWW (pozostałe generatory po prostu nie generują linków w ogóle). == {{Code|p.Indentyfikator_lub_podstrona_wikiadresu_strony()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Indentyfikator_lub_podstrona_wikiadresu_strony(ustep,czy_ustep)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|ustep}} - nazwa strony ustępu strony, co z niego robimy nazwę linku, * {{Code|czy_ustep}} - jeżeli {{Code|true}} liczy wtedy nagłówek, a jeżeli tego nie ma to podstronę. Jeżeli {{Code|ustep{{=}}nil}}, w takim razie jest zwracana wartość parametru tego, czyli {{Code|nil}}. Aby nie uzyskać identyfikatora strony, to drugi parametr, czyli {{Code|czy_ustep}}, nie może przyjmować wartości logicznej {{Code|true}}, tylko jako {{Code|false}} lub {{Code|nil}} - wtedy zwracana jest wartość argumentu {{Code|ustęp}}. A jeżeli podamy wartość {{Code|true}}, gdy zmienna {{Code|ustep}} zawiera nagłówek, to zwracany jest właśnie on bez znaku {{Code|#}}, a jeżeli nie zawiera on tego, tylko podstronę, wtedy zwracana jest jego podstrona. W przeciwny wypadku zwracana jest sama wartość argumentu {{Code|ustep}}. == {{Code|p.Nazwa_od_niewielkiej_lub_wielkiej_litery()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Nazwa_od_niewielkiej_lub_wielkiej_litery(nazwa,od_malej,od_duzej)...end; </syntaxhighlight> Oto parametry tej funkcji: * {{Code|nazwa}} - nazwa linku strony, * {{Code|od malej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na małą literę, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być nie {{Code|true}}. W przeciwny wypadku funkcja zwraca samą nieprzekształconą nazwę strony. == {{Code|p.Strona_zbiorcza()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Strona_zbiorcza(strona,podstrona,nazwa,czy_ustep,czy_pod_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - nieopcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}}- jest to nazwa linku, jaka ma być wyświetlana - opcjonalna, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny, * {{Code|czy_pod_ustep}} - czy ma liczyć nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy ustęp strony linku, z którego tworzymy nagłówek strony linku, który możliwie ma być na stronie zbiorczej - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Nagłówek strony jest tworzony z {{Code|pelnanazwajednostki}}, {{Code|strona}} i {{Code|podstrona}}, także na podstawie parametru {{Code|czy_pod_ustep}} Wartości opcjonalne powyżej przyjmują wartość {{Code|nil}}, wtedy możemy je uznać tak, jak by je, nie podaliśmy. Funkcja zwraca trzy parametry jednocześnie, czyli nazwę strony, jego nagłówek i nazwę linku. == {{Code|p.Wolumin()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Wolumin(strona,podstrona,nazwa,czy_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - opcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}} - jest to nazwa linku, jaka ma być wyświetlana - opcjonalny, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Funkcja zwraca dwa parametry jednocześnie, czyli policzoną nazwę strony i nazwę linku. == {{Code|p["Sekcja referencyjna"](frame)}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> p["Sekcja referencyjna"]=function(frame)...end; </syntaxhighlight> Parametrami tablicy ramki modułu, które są podane w rodzicu w szablonie lub w samej ramce, jeżeli jest podany parametr {{Parametr|wyspecjalizowana|tak}} w samej ramce, a one są: * {{Code|1}}, {{Code|s}} lub {{Code|strona}} - jest to artykuł w podręczniku, ewentualnie z nagłówkiem, * {{Code|2}}, {{Code|n}} lub {{Code|nazwa}} - nazwa linku wyświetlana w artykule, * {{Code|3}}, {{Code|p}} lub {{Code|podstrona}} - podstrona dodawana do linku podczas rozważać, wtedy artykuł, będzie o jeden lub wyżej, głębiej w drzewie danej przestrzeni nazw, * {{Code|4}}. {{Code|u}} lub {{Code|ustęp}} - jeśli przyjmuje wartość niepustą, to nazwa wyświetlana linku jest jego nagłówek, jeżeli istnieje, lub jego podstrona albo sama strona, w przypadku przestrzeni nazw {{Np|(main)|link=tak}} i {{Np|Wikijunior|link=tak}} oraz nibyprzestrzeni nazw {{lr2|Brudnopis}}, w przestrzeni nazw {{Np|Project|link=tak}}, a także przestrzeni użytkownika {{Np|User|link=tak}}, a w przypadku nie podania nazwy strony {{Code|strona}} (lub jego skrót: {{Code|s}}) lub {{Code|1}}, to parametr {{Code|ustęp}} zachowuje się odwrotnie, wtedy nazwę strony, do której linkuje szablon, przyjmujemy domyślnie, że jest to nazwa książki, w przestrzeniach nazw w dwóch pierwszych nie widać różnicy działania tego parametru, już jest różnica w nibyprzestrzeniach nazw dwóch ostatnich, tutaj ten szablon podaje subnazwę książki, a nie jego adres, gdzie przy {{Parametr|ustęp|tak}} (lub jego synonim numerowany: {{Parametr|4|tak}}) (lub jego skrót: {{Parametr|u|tak}}) podaje cały adres, * {{Code|m}}, {{Code|od małej}} - jeśli niepuste, wyświetlany jest link od małej litery, * {{Code|d}}, {{Code|od dużej}} - jeśli niepuste, wyświetlany jest link od dużej litery, * {{Code|t}}, {{Code|pod-ustęp}} - na stronach zbiorczych skraca nazwę nagłówka, która na stronie artykułów podręcznika byłaby nazwą strony, do substrony. Te parametry powyżej są jednocześnie parametrami szablonu {{s|Sekcja referencyjna}} (lub jego wersji skrótowej {{s|sr}}). Te parametry możemy podać też w formie funkcyjnej: <syntaxhighlight lang="lua"> local sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); local link=sekcja_referencyjna_modul["Sekcja referencyjna"]{args={strona=..., nazwa=.., podstrona=..., ...}}; </syntaxhighlight> W ramce funkcyjnej parametry ze znakami nienależącymi do alfabetu łacińskiego piszmy w cudzysłowach w nawiasach kwadratowych, czyli w formie: {{Code|["pod-ustęp"]{{=}}...}}, czy parametry numerowe w nawiasach bez cudzysłowu: {{Code|[1]{{=}}...}}, a parametry normalne piszemy: {{Code|strona{{=}}...}}. Funkcja w uruchamianiu ma dwa warianty, na normalnej stronie niezbiorczej uruchamiana jest funkcja {{Code|{{sr|#p.Wolumin()|p=Sekcja referencyjna}}}}, a na jakikolwiek stronie zbiorczej według Stronicowego Parsera na podstawie modułu {{lpg|lua}} w {{lpr|Lua|Scribunto}}, czyli strony zefiniowanej w: {{Code|{{m|StronicowyParser/StronaSubst}}}}, jest uruchamiana funkcja: {{Code|{{sr|#p.Strona_zbiorcza()|p=Sekcja referencyjna}}}} (wtedy jest uruchamiana funkcja: {{Code|{{m|StronicowyParser|CzyStronaSubst}}}}, która zwraca wynik {{Code|tak}}, gdy strona dana jest bieżąca lub podana na podstawie parametrów pudełkowych: {{Code|{{m|Pudełko}}}}, która jest stroną zbiorczą, w przeciwnym wypadku mamy wynik: {{Code|nil}}, gdy nie). {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 1vyt1in15n9lml2rwk0i1zybaw2zge8 538687 538685 2026-03-31T19:46:45Z Persino 2851 /* {{Code|p["Sekcja referencyjna"](frame)}} */ 538687 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Sekcja referencyjna}}|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 sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Ta funkcja o nazwie: {{Code|{{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}}}, jak i szablon: {{Code|{{s|Sekcja referencyjna}}}} (lub jego wersja skrótowa: {{Code|{{s|sr}}}} - w postaci przekierowania do jego dłuższej wersji), służy do wyświetlania na normalnej lub stronie zbiorczej linków inteligentnych danego podręcznika, jeżeli podamy jego artykuł wraz z, lub bez, nagłówkiem, lub nagłówek z hashem, z artykułem w zmiennej w: {{Code|podstrona}} (lub ten parametr podany w wersji skrótowej {{Code|p}}), też można linkować do strony głównej podręcznika, nie podając żadnego artykułu w funkcji w: {{sr|#p["Sekcja referencyjna"]()|p=Sekcja referencyjna}}, w zmiennej: {{Code|strona}} (lub w wersji jego skrótowej {{Code|s}}), i w zmiennej w jego pierwszym parametrze numerowanym, lub w jego wersji szablonowej. Ta funkcja lub jego odpowiednik szablonowy wyświetla na stronie normalnej artykułu link do artykułu, a na stronie zbiorczej link do identyfikatora jakiegoś obiektu na stronie. Inne funkcje użyte w module: {{Code|{{ld2|Sekcja referencyjna}}}}, są funkcjami pomocniczymi do głównej jego funkcji, która służy do wywołania w ramce w jego odpowiedniku szablonowym, podany tutaj na samym początku tej strony, te funkcje służą też do użycia w innych modułach, np.: {{ld2|StronicowyParser/Potrzebne}}. Funkcje tutaj opisują obsługę linków inteligentnych (tzw. linki inteligentne), który koloruje linki w zależności do jakiej kategorii szablon zaliczy stronę wskazaną w nim. Zestaw możliwych kodów linkowych, znajduje się na stronie {{s|Link wewnętrzny}}, w miejscu pod tabelą nawigacyjną {{s|Tabela nawigacyjna}}, według jego wikikodu opisu. === Dlaczego te funkcje w opisywanym module, jak i szablon, o który jest zdefiniowany === Moduł {{ld2|Sekcja referencyjna}}, i też szablon {{s|Sekcja referencyjna}} (używany w postaci przekierowania do niego {{s|sr}}), który wykorzystuje ten moduł do swojej definicji, zostały stworzone do używania w spisach treści, oraz wewnątrz zwyczajnych stron książki jako odnośnik do sekcji (rozdziału/podrozdziału/itp.). Ideą tego modułu (szablonu) było rozwiązanie pewnego problemu pojawiającego się, gdy strona zostanie wydrukowana w formie PDF-a. Normalnie, gdy spis treści zawiera linki do rozdziałów tworzonych normalnym sposobem (przez wikilinki), to w wydrukowanej formie te linki zostają odnośnikami bezwzględnymi do strony Wikibooks. Gdy użytkownik kliknie w taki link w PDF-ie, to zostanie przekierowany do przeglądarki WWW z otwartą stroną Wikibooks. Psuje to użytkowanie takiej strony, gdyż użytkownik zazwyczaj zakłada, że gdy kliknie na odnośnik w spisie treści, to ten przeniesie go na odpowiednią stronę ''wewnątrz'' PDF-a. Ten moduł (szablon) rozwiązuje ten problem, przez warunkową zamianę linków do stron sekcji w linki lokalne do sekcji wewnątrz strony do druku. W niektórych generatorach PDF-a taka zamiana skutkuje tym, że takie linki umieszczone w spisach treści, powodują przeniesienie do odpowiedniej strony, a nie przeskok do strony WWW (pozostałe generatory po prostu nie generują linków w ogóle). == {{Code|p.Indentyfikator_lub_podstrona_wikiadresu_strony()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Indentyfikator_lub_podstrona_wikiadresu_strony(ustep,czy_ustep)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|ustep}} - nazwa strony ustępu strony, co z niego robimy nazwę linku, * {{Code|czy_ustep}} - jeżeli {{Code|true}} liczy wtedy nagłówek, a jeżeli tego nie ma to podstronę. Jeżeli {{Code|ustep{{=}}nil}}, w takim razie jest zwracana wartość parametru tego, czyli {{Code|nil}}. Aby nie uzyskać identyfikatora strony, to drugi parametr, czyli {{Code|czy_ustep}}, nie może przyjmować wartości logicznej {{Code|true}}, tylko jako {{Code|false}} lub {{Code|nil}} - wtedy zwracana jest wartość argumentu {{Code|ustęp}}. A jeżeli podamy wartość {{Code|true}}, gdy zmienna {{Code|ustep}} zawiera nagłówek, to zwracany jest właśnie on bez znaku {{Code|#}}, a jeżeli nie zawiera on tego, tylko podstronę, wtedy zwracana jest jego podstrona. W przeciwny wypadku zwracana jest sama wartość argumentu {{Code|ustep}}. == {{Code|p.Nazwa_od_niewielkiej_lub_wielkiej_litery()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Nazwa_od_niewielkiej_lub_wielkiej_litery(nazwa,od_malej,od_duzej)...end; </syntaxhighlight> Oto parametry tej funkcji: * {{Code|nazwa}} - nazwa linku strony, * {{Code|od malej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na małą literę, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być nie {{Code|true}}. W przeciwny wypadku funkcja zwraca samą nieprzekształconą nazwę strony. == {{Code|p.Strona_zbiorcza()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Strona_zbiorcza(strona,podstrona,nazwa,czy_ustep,czy_pod_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - nieopcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}}- jest to nazwa linku, jaka ma być wyświetlana - opcjonalna, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny, * {{Code|czy_pod_ustep}} - czy ma liczyć nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy ustęp strony linku, z którego tworzymy nagłówek strony linku, który możliwie ma być na stronie zbiorczej - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Nagłówek strony jest tworzony z {{Code|pelnanazwajednostki}}, {{Code|strona}} i {{Code|podstrona}}, także na podstawie parametru {{Code|czy_pod_ustep}} Wartości opcjonalne powyżej przyjmują wartość {{Code|nil}}, wtedy możemy je uznać tak, jak by je, nie podaliśmy. Funkcja zwraca trzy parametry jednocześnie, czyli nazwę strony, jego nagłówek i nazwę linku. == {{Code|p.Wolumin()}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> function p.Wolumin(strona,podstrona,nazwa,czy_ustep,od_malej,od_duzej,pelnanazwajednostki)...end; </syntaxhighlight> ; Parametrami funkcji{{Dk}} * {{Code|strona}} - nazwa strony właściwej, może być to nagłówek wraz ze znakiem {{Code|#}} - opcjonalny, * {{Code|podstrona}} - jest to podstrona, w której znajduje się {{Code|strona}} - opcjonalny, * {{Code|nazwa}} - jest to nazwa linku, jaka ma być wyświetlana - opcjonalny, * {{Code|czy_ustep}} - jeżeli mamy niepodaną nazwę linku, wtedy przy pomocy wskazań wartości logicznej tego argumentu, aby policzyć nazwę linku, wyznaczamy nagłówek strony, jeśli istnieje, lub podstronę, lub samą stronę w przeciwny wypadku, czyli ustęp strony linku, wtedy mamy nazwę linku tak uzyskaną, przeciwnie, gdy mamy przestrzeń główną {{np|(main)|link=tak}} lub {{Np|Wikijunior|link=tak}}, a lub co najważniejsze strony brudnopisu, np.: {{lr2|Brudnopis}} w przestrzeni nazw {{Np|Wikibooks|link=tak}}, lub użytkownika {{Np|User|link=tak}}, wtedy, jeśli nie podamy parametru {{Code|strona}}, to nazwa linku jest ta nazwa strony, jest ona liczona, jako pełna nazwa strony bez nazwy przestrzeni nazw, a jeśli nie podano tego parametru, to dla tej przestrzeni jest subnazwą nazwy książki, w przypadku dwóch pierwszych przestrzeni nie ma różnicy, a w dwóch ostatnich za to jest, to co uzyskaliśmy, to jest nazwa linku - opcjonalny. ;; Parametry wielkości{{Dk}} * {{Code|od malej}} - zamienia pierwszą literę, pierwszą literę, nazwy linku na małą literę - opcjonalny, * {{Code|od dużej}} - zamienia pierwszą literę, pierwszy znak, nazwy linku na dużą literę - opcjonalny. Te parametry nie mogą się zaprzeczać między sobą, tzn. oba parametry nie mogą być ustawione na {{Code|true}}. ;; Parametry pudełkowe pudełka {{m|Pudełko}}{{Dk}} * {{Code|pelnanazwajednostki}} - pełna nazwa jednostki uzyskana jest, dzięki podanym zmiennym pudełkowym {{m|Pudełko}}, czyli {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa jednostki}}, a jeżeli jakaś z tych zmiennych nie została podana, to traktowana jest, jakby była podana, w takim razie ona jest liczona na podstawie parametrów aktualnej strony, ta niepodana, te zmienne nie muszą być użyte, a nawet nie wszystkie, na podstawie tego jest liczona pełna nazwa jednostki, przy pomocy funkcji: {{sr|#p["Pełna nazwa jednostki"]()|p=Pudełko}}, z tej zmiennej jest liczona pełna nazwa książki, używając funkcji: {{sr|#m["PEŁNANAZWAKSIĄŻKI"]()|p=Nazwy - Tom IV}}, parametry pudełek mogą wskazywać na inny artykuł niż aktualny, byle tylko adres książki się zgadzał. Funkcja zwraca dwa parametry jednocześnie, czyli policzoną nazwę strony i nazwę linku. == {{Code|p["Sekcja referencyjna"](frame)}} == Definicja skrótowa funkcji jest w postaci: <syntaxhighlight lang="lua"> p["Sekcja referencyjna"]=function(frame)...end; </syntaxhighlight> Parametrami tablicy ramki modułu, które są podane w rodzicu w szablonie lub w samej ramce, jeżeli jest podany parametr {{Parametr|wyspecjalizowana|tak}} w samej ramce, a one są: * {{Code|1}}, {{Code|s}} lub {{Code|strona}} - jest to artykuł w podręczniku, ewentualnie z nagłówkiem, * {{Code|2}}, {{Code|n}} lub {{Code|nazwa}} - nazwa linku wyświetlana w artykule, * {{Code|3}}, {{Code|p}} lub {{Code|podstrona}} - podstrona dodawana do linku podczas rozważać, wtedy artykuł, będzie o jeden lub wyżej, głębiej w drzewie danej przestrzeni nazw, * {{Code|4}}. {{Code|u}} lub {{Code|ustęp}} - jeśli przyjmuje wartość niepustą, to nazwa wyświetlana linku jest jego nagłówek, jeżeli istnieje, lub jego podstrona albo sama strona, w przypadku przestrzeni nazw {{Np|(main)|link=tak}} i {{Np|Wikijunior|link=tak}} oraz nibyprzestrzeni nazw {{lr2|Brudnopis}}, w przestrzeni nazw {{Np|Project|link=tak}}, a także przestrzeni użytkownika {{Np|User|link=tak}}, a w przypadku nie podania nazwy strony {{Code|strona}} (lub jego skrót: {{Code|s}}) lub {{Code|1}}, to parametr {{Code|ustęp}} zachowuje się odwrotnie, wtedy nazwę strony, do której linkuje szablon, przyjmujemy domyślnie, że jest to nazwa książki, w przestrzeniach nazw w dwóch pierwszych nie widać różnicy działania tego parametru, już jest różnica w nibyprzestrzeniach nazw dwóch ostatnich, tutaj ten szablon podaje subnazwę książki, a nie jego adres, gdzie przy {{Parametr|ustęp|tak}} (lub jego synonim numerowany: {{Parametr|4|tak}}) (lub jego skrót: {{Parametr|u|tak}}) podaje cały adres, * {{Code|m}}, {{Code|od małej}} - jeśli niepuste, wyświetlany jest link od małej litery, * {{Code|d}}, {{Code|od dużej}} - jeśli niepuste, wyświetlany jest link od dużej litery, * {{Code|t}}, {{Code|pod-ustęp}} - na stronach zbiorczych skraca nazwę nagłówka, która na stronie artykułów podręcznika byłaby nazwą strony, do substrony. Te parametry powyżej są jednocześnie parametrami szablonu {{s|Sekcja referencyjna}} (lub jego wersji skrótowej {{s|sr}}). Te parametry możemy podać też w formie funkcyjnej: <syntaxhighlight lang="lua"> local sekcja_referencyjna_modul=require("Module:Sekcja referencyjna"); local link=sekcja_referencyjna_modul["Sekcja referencyjna"]{args={strona=..., nazwa=.., podstrona=..., ...}}; </syntaxhighlight> W ramce funkcyjnej parametry ze znakami nienależącymi do alfabetu łacińskiego piszmy w cudzysłowach w nawiasach kwadratowych, czyli w formie: {{Code|["pod-ustęp"]{{=}}...}}, czy parametry numerowe w nawiasach bez cudzysłowu: {{Code|[1]{{=}}...}}, a parametry normalne piszemy: {{Code|strona{{=}}...}}. Funkcja w uruchamianiu ma dwa warianty, na normalnej stronie niezbiorczej uruchamiana jest funkcja {{Code|{{sr|#p.Wolumin()|p=Sekcja referencyjna}}}}, a na jakikolwiek stronie zbiorczej według Stronicowego Parsera na podstawie modułu {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli strony zefiniowanej w: {{Code|{{m|StronicowyParser/StronaSubst}}}}, jest uruchamiana funkcja: {{Code|{{sr|#p.Strona_zbiorcza()|p=Sekcja referencyjna}}}} (wtedy jest uruchamiana funkcja: {{Code|{{m|StronicowyParser|CzyStronaSubst}}}}, która zwraca wynik {{Code|tak}}, gdy strona dana jest bieżąca lub podana na podstawie parametrów pudełkowych: {{Code|{{m|Pudełko}}}}, która jest stroną zbiorczą, w przeciwnym wypadku mamy wynik: {{Code|nil}}, gdy nie). {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> bqncmahht1787p0h1ikn9fpg5bp9yko Wikibooks:Moduły/Parametry 4 63291 538653 538630 2026-03-31T13:13:47Z Persino 2851 /* Funkcja biblioteczna */ 538653 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Parametry}}|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 parametry_modul=require("Module:Parametry"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Moduł: {{ld2|Parametry}}, służy do operowania na wszelkiego rodzaju parametrach, modyfikowaniu ich, a nawet podawania z funkcji z tablicy ramki tablicy transportu tego modułu, i innych funkcji z innych modułów, które wykorzystują funkcje parametru tego modułu. Będziemy mówili, że zbiór jest ponumerowany, gdy ma elementy nienazwane od jeden zwyż, bez przerw, do pewnego końca, wtedy jest to sekwencja w języku {{lpg|Lua}}, a jeżeli ona nie jest ponumerowana, to ma tylko elementy nienazwane, czyli wtedy nie jest sekwencją. Zbiór z elementami nienazwanymi (nazwane liczbami naturalnymi) może zawierać czasami elementy nazwane, ktorego nazwy nie są już takie, zwykle je się oznacza łańcuchami znakowymi, a w języku {{lpg|Lua}} to są po prostu elementy typu: {{Code|string}}, a liczby naturalne typu: {{Code|number}}. == Funkcje liczb elementów w tabeli == === {{Code|p["LiczbaElementówNumerowanychTablicy"]()}} === Funkcja liczy liczbę numerowanych od {{Code|1}}, one nie mogą mieć miedzy sobą przerw zaczynające się właśnie od tej liczby, czyli: {{Code|1,2,3,4,...}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, jeżeli {{Code|true}}, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1","nazwa2","nazwa3","nazwa4","nazwa5","nazwa6","nazwa7","nazwa8","nazwa9",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNumerowanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|9}}, ponieważ ma on mnóstwo parametrów nienazwanych, które jednocześnie są numerowane, czyli są one od {{Code|1}} i ciągną się bez przerw, aż do pewnej liczby. Powyższe wywołanie liczy liczbę parametrów numerowanych niepustych. === {{Code|p["LiczbaElementówNumerowanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNumerowanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ta zmienna niepusta, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusta. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaElementówNumerowanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwaa2|nazwa3|nazwa4|nazwa5|nazwa6|nazwa7|nazwa8|nazwa9}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nnumerowwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany od {{Code|1}} bez przerw. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. Jak można zauważyć, że ma on parametry numerowanych (zaczynające się od jedynki), które można znaleźć w parametrach szablonu, jeżeli tam w ogóle istnieją. === {{Code|p["LiczbaElementówNienazwanychTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą, niekoniecznie, mieć przerwy, np.:{{Code|3,10,15,..}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="nazwa1",[10]="nazwa2",[15]="nazwa3",[18]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNienazwanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|4}}, bo taka jest liczba parametrów nienazwanych, ale nie numerowanych. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych. === {{Code|p["LiczbaParametrówNienazwanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNienazwanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaParametrówNienazwanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ten argument niepusty, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusty. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaParametrówNienazwanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=nazwa1|10=nazwa2|15=nazwa3|18=nazwa4}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany, czy jest w liczbie większej niż {{Code|1}}. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. === {{Code|p["LiczbaElementówTablicy"]()}} === Funkcja liczy liczbę nienazwanych (numerowanych) i nazwanych elementów tablicy, a jeżeli parametr: {{Code|wliczac}}, jest podany, to liczy nie o zawartości niepustej. <syntaxhighlight lang="lua"> p["LiczbaElementówTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela do rozważań na problemy tej funkcji, * {{Code|wliczac}} - czy ma liczyć liczbę elementów niepustych, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={ 10, nazwa = 5, parametr = "tak", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_tablicy=parametry_modul["LiczbaElementówTablicy"](tabela,true); </syntaxhighlight> Policzona liczba elementów {{Code|liczba_elementow_tablicy}} jest {{Code|3}}. Powyższa funkcja liczy liczbę wszystkich parametrów niepustych w podanej tablicy. === {{Code|p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą mieć przerwy, np.: {{Code|3,10,15,..}}, liczbę elementów tablicy odpowiednio skonstruowanych, charakterystycznych dla tej funkcji. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). Należy też podać niepusty przedrostek, niebędący liczbą zakodowaną w łańcuchu. Należy wskazać funkcji, czy oczekujemy formy numerkowe w postaci czystych liczb, czy też również w postaci łańcuchów, które po przekształceniu na liczbę funkcją {{Code|tonumber}} stają się normalnymi liczbami {{lpg|Lua}}. <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]=function(tabela,przedrostek,wliczac,czy_formy_numerkowe)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|przedrostek}} - niepusty, niebędący liczbą łańcuchową, przedrostek, który ma być przed liczbą, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|czy_formy_numerkowe}} - czy wyszukiwane liczby przy pomocy funkcji {{Code|pairs}} są czystymi liczbami {{lpg|Lua}}. Funkcja liczy liczbę parametrów nienazwanych i nazwanych, ale z podanym przedrostkiem, lub nie, skonstruowanych z tych pierwszych. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="wartość1", [10]="wartosć2", [15]="wartość3", ["18"]="wartość4", ["nazwa2"] = "wartosc5", ["nazwa10"] = "wartość6", ["nazwa18"] = "wartość7", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy=parametry_modul["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"](tabela,"nazwa",true,false); </syntaxhighlight> Funkcja w postaci wartości {{Code|liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy}} zwróci liczbę {{Code|7}}. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych, z przedrostkiem lub nie, ale nie czysto numerkowych, ale również numerkowych (szeregi). == Funkcje minimalnej i maksymalnej wartości w tabeli == === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MaksymalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|10=nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik {{Code|20}}, ponieważ ta nazwa (klucz) parametru jest największa. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy maksymalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local maksymalna_wartosc_parametru_nienazwanego=parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|maksymalna_wartosc_parametru_nienazwanego}}: {{Code|20}}. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MinimalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|150nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci liczbę {{Code|4}}, ponieważ ta nazwa parametru najmniejsza. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MinimalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy minimalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MinimalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc_parametru_nienazwanego=parametry_modul.MinimalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|minimalna_wartosc_parametru_nienazwanego}}: {{Code|4}}. === {{Code|p.MinimalnyIMaksymalnyNumerParametru()}} === Funkcja liczy minimalny i maksymalny numer parametru nazwanego numerowany ze spację liczbami naturalnymi, może być od {{Code|0}}, określony liczbą, mający w sobie, niekoniecznie, przerwy, niekoniecznie zaczynający się jedynki, o pewnej podstawie. <syntaxhighlight lang="lua"> function p.MinimalnyIMaksymalnyNumerParametru(tabela,nazwa_parametru_okreslona)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|nazwa_parametru_okreslona}} - podstawa parametrów numerowanych, np.: dla parametrów: {{Code|nazwa 1}}. Przykładem wywołania jest dla parametrów o nazwach niepustych w tablicy: <syntaxhighlight lang="lua"> local tabela={["nazwa 4"]="tak",["nazwa 5"]="tak",["nazwa 10"]="tak",["nazwa 20"]="tak",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc,maksymalna_wartosc=parametry_modul.MinimalnyIMaksymalnyNumerParametru(tabela,"nazwa"); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrach: {{Code|minimalna_wartosc}} i {{Code|maksimum_wartosc}}, są kolejno: {{Code|4}} i {{Code|20}}. Jest to minmalna i maksymalna wartość dla liczb po spacji siedzące przy podstawach parametrów, która jest podana w parametrze drugim funkcji. == Funkcje, czy są takie parametry == Poniższe funkcje zwracają {{Code|tak}}, gdy coś znaleziono, gdy nic, to wartość języka {{lpg|Lua}}, czyli: {{Code|nil}}, co odpowiada w odpowiednikach uruchamianych w ramce szablonu wartości pustej {{Code|""}}. === {{Code|p["CzySąParametryNumerowaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy numerowane, tzn. od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNumerowaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, poieważ istnieją jakieś parametry numerowane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNumerowaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNumerowaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy numerowane tablicy, tzn. numerowane od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNumerowaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={"nazwa1", "nazwa2", "nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_numerowane_tablicy=parametry_modul["CzySąElementyNumerowaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo istnieją jakieś elementy numerowane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametryNienazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane, tzn., niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNienazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=nazwa1|5=nazwa2|8=nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane, a nienumerowane (nie zaczyna się od {{Code|1}}). Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNienazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNienazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nienazwane, tzn. nienazwane, niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNienazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[3]="nazwa1", [5]="nazwa2", [8]="nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane tablicy {{Code|tabela}}, a nienumerowane (nie zaczyna się od {{Code|1}}). === {{Code|p["CzySąParametryNazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|10=wartość2|15=wartość3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nazwane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nazwane, tzn. niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartośc3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ są jakieś elementy nazwane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametrySzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametrySzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametrySzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość4|2=nazwa4|6=nazwa6}} </syntaxhighlight> Szablon zwroci wynik {{Code|tak}}, ponieważ ma on jakieś parametry. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyTablicy"]()}} === Funkcja służy do wskazania, czy w parametrach tabeli {{Code|tabela}} są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartość3", [2]="nazwa4", [6]="nazwa5", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane_lub_nazwane=parametry_modul["CzySąElementyTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ta tabela {{Code|tabela}} ma jakieś elementy. === {{Code|p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"](frame)}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w parametrach szablonu rodzica, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"] = function (frame)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|niepuste}} - taki element nie może być pusty, * {{Code|frame:getParent().args}} - tabela ramki szablonu rodzica, wśród w której następuje to wyszukiwanie. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyCoNajwyżejJedenNumerowanyParametrSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać w wynikach poniżej. Przykład pierwszy: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Przykład drugi: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6|3=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane. Przykład trzeci: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6|4=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane, ale one nie zaczynają się od {{Code|1}}, dlatego wynik jest przede wszystkim taki. Przykład czwarty: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo nie ma parametrów numerowanych zaczynających się od liczby {{Code|1}}. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w podanej tabeli, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyElementTablicy"] = function (args,wliczac)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|args}} - tabela ramki szablonu rodzica, wśród w której następuje to wyszukiwanie, * {{Code|wliczac}} - taki element nie może być pusty. Wywołanie przykładowej tej funkcji jest, pierwsze: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6,}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Wywołanie przykładowej tej funkcji jest, drugie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6, [3]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, trzecie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, [4]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, ale, są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, czwarte: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, }; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, mimo, że jest jeden element nienazwany. == Funkcje kopiowania tabel == === {{Code|p["KopiujTabelęŁańcuchów"]()}} === Szablon przyjmuje tabelę: {{Code|args}}, którego elementem jest: {{Code|args.tabela}}, która jest tą właściwą tabelę, na której operujemy. Tabela {{Code|args}} posiada składowe do zastępowaniem poszczególnych elementów ściśle dla niego, a jeżeli nie ma dla niego składowych szczególnych, to ogólnie. Z tak uzyskanej tabeli wyodrębniamy pewne elementy szczególnie lub ogólnie, jak z zastępowaniem. A jeśli coś uzyskamy coś, to do niego dodawany jest przedrostek i przyrostek, a podstawie tego tworzymy nową tabelę {{Code|args2}}, którą zwracamy przez tę funkcję. <syntaxhighlight lang="lua"> p["KopiujTabelęŁańcuchów"]=function(args)...end; </syntaxhighlight> Składowymi nazwanymi tabeli: {{Code|args}}, są składowe, którym koniecznym elementem jest {{Code|args.tabela}}, a dalsze są opcjonalne, ale tylko co najmniej jeden z nich musi być podany, co na podstawie, z której tworzymy nową tabelkę, a więc: * {{Code|args.tabela}} - tabela, na której operujemy, na podstawie, z której tworzymy zwracaną tabelę {{Code|args2}}, * {{Code|args["wzór"][coś]}} lub {{Code|args["wzór wszystko"]}} - wzór wyszukiwania, czy element wskazywany przez niego, ma to, * {{Code|args.podstawienie[coś]}} lub {{Code|args["podstawienie wszystko"]}} - podstawienie, dokonane po znalezieniu elementu w elemencie według powyższego zaraz wzoru, i go zastąpienie, * {{Code|args["wzór 2"][coś]}} lub {{Code|args["wzór wszystko 2"]}} - wzór wyodrębnienia pewnej części, jeśli element to ma, a jeśli tego nie ma, to zwracane jest {{Code|nil}}, wtedy z tego elementu tabeli, dla której uzyskaliśmy tę wartość, nie jest przetwarzana jako element nowej tabeli {{Code|args2}}, * {{Code|args.przedrostek[coś]}} lub {{Code|args["przedrostek wszystko"]}} - jeśli element istnieje wyszukany powyższym wzorem, to to jest przedrostek przed tym elementem, * {{Code|args.przyrostek[coś]}} lub {{Code|args["przyrostek wszystko"]}} - jeśli element istnienie wyszukany powyższym wzorem, to to jest przyrostek po tym elemencie. Element {{Code|coś}} jest to jakiś klucz elementu tabeli {{Code|args.tabela}}. W powyższych alternatywach jest sprawdzany najpierw pierwszy element alternatywny, czy istnieje, a potem drugi. Za pomocą tego modyfikujemy tę tabelę lub usuwamy poszczególne jego elementy, tworząc tabelę {{Code|args2}}. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; local args = { tabela = tabela, ["wzór wszystko"] = "%d+$", ["podstawienie wszystko"] = "_numer", ["wzór wszystko"] = "_numer$", ["przedrostek wszystko"] = "coś przed ", ["przyrostek wzystko"] = " coś po", }; local args2 = parametry_modul["KopiujTabelęŁańcuchów"](args); mw.logObject(args2, "Uzyskana tabela:" ); </syntaxhighlight> Uzyskaną tabelą jest w wyniku operacji według powyższego kodu, wyświetlaną przez funkcję {{Code|mw.logObject}} jest: <syntaxhighlight lang="lua"> local args2={ [1] = "coś przed wartość_numer coś po", [2] = "coś przed wartość_numer coś po", ["nazwa1"] = "coś przed wartość_numer coś po", ["nazwa2"] = "coś przed wartość_numer coś po", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementów"]()}} === To jest nierekurencyjne kopiowanie tabeli {{Code|tabela}}, a jeżeli {{Code|wliczac_1{{=}}true}}, to klucze elementów nie mogą być puste lub wskazywać na wartość fałszywą, a jeśli {{Code|wliczac_2{{=}}true}}, to wartości tych elementów o tych kluczach nie mogą być puste lub wskazywać na wartość fałszywą. W takim przypadku wywoływana w takim bądź razem jest funkcja: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}: <syntaxhighlight lang="lua"> p["KopiujTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabela2 = parametry_modul["KopiujTabelęElementów"](tabela,true,true); </syntaxhighlight> Uzyskana tabela {{Code|tabela2}} jest w wyniku wywołania kodu, którą możemy podejrzeć przy pomocy funkcji: {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabela2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementówBezTablicyKluczy"]()}} === Funkcja kopiuje nierekurencyjnie elementy tabeli {{Code|tabelka}}, usuwając z niej elementy o kluczach wskazanych przez tabelę {{Code|tabelka2}}, którego elementy piszemy w postaci {{Code|{"klucz"] {{=}} "wartość"}}. Funkcją wyszukiwującą klucze w tabeli {{Code|tabelka2}} jest: {{Code|{{sr|#p.CzyJestTakiKluczTabeli()|p=Parametry}}}}. Z tabeli można usunąć klucze, ewentualnie przy pomocy {{Code|wliczac_1{{=}}true}}, i ewentualnie wartości {{Code|wliczac_2{{=}}true}}, o wartościach pustych lub fałszywych przy pomocy funkcji: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A więc: <syntaxhighlight lang="lua"> p["KopiujTabelęElementówBezTablicyKluczy"]=function(tabelka,tabelka2,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|tabelka2}} - tabela zbudowana przy pomocy ściśle określonych kluczy o dowolnych wartościach (wartości są nieistotne), za pomocą których usuwamy elementy tabeli {{Code|tabelka2}}, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykłady usuwania kluczy z tabeli o kluczach i wartościach, pustych lub fałszywych: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={ [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabelka2={[2]=true,["nazwa2"]=false,}; local tabelka3=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](tabelka,tabelka2,true,true); </syntaxhighlight> Tabelą uzyskaną z wyników: {{Code|tabelka3}}, jest, którą możemy podejrzeć przy pomocy funkcji {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabelka3={ [1] = "wartość1", ["nazwa1"] = "wartość3", }; </syntaxhighlight> === {{Code|p["KopiujRekurencyjnieTabelęElementów"]()}} === Funkcja dokładnie rekurencyjnie kopiuje tabelę {{Code|tabelka}}, pomijając ewentualnie elementy o kluczach, przy pomocy {{Code|wliczac_1{{=}}true}}, i o wartościach przy pomocy: {{Code|wliczac_2{{=}}true}}, przy użyciu funkcji. Funkcja też kopiuje dokładnie również metafunkcje, na razie to jest przygotowane tylko dla jednych z nich, tzn. ona jest zdefiniowana {{ld2|Szablonowe/Potrzebne}}, i nazwana jest ona jako: {{Code|{{sr|#p.MetaTabelkaSzablonowe(__metatablica)|p=Szablonowe/Potrzebne}}}}, w niej musi istnieć składowa tej metatablicy o kluczu {{Code|tablica}}, w której są przechowywane elementy o jakiś kluczach i ich wartościach, właściwa do niego tabela jest zawsze pusta, a ta tabela należąca do metatabelki powiązana z tą tabelą natomiast nie ona taka, ona jest wykorzystywana do liczenia elementów. Więc: <syntaxhighlight lang="lua"> p["KopiujRekurencyjnieTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykładem kopiowania rekurencyjnego tabeli {{Code|tabelka}}, usuwając z niej jednocześnie klucze i wartości, puste lub fałszywe, jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = "",["nazwa4"] = { ["nazwa5"}=true, ["nazwa6"] = "", }, }; local tabelka2=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tabelka,true,true); </syntaxhighlight> Wynikiem jest dokładnie przekopiowana tabela {{Code|tabelka}} bez pewnych elementów: <syntaxhighlight lang="lua"> local tabelka2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", ["nazwa4"] = {["nazwa5"] = true, }, }; </syntaxhighlight> Obiekt referencyjny {{Code|tabelka2}} wskazuje na inny adres niż {{Code|tabelka}}. == Funkcje istnienia parametrów == === {{Code|p["NazwanyLiczbą"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyLiczbą}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwany parametr, tzn. określony liczbą: <syntaxhighlight lang="lua"> p["NazwanyLiczbą"] = function(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyLiczbą|2}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=wartość|3=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo znalazł parametr nienazwany {{Code|2|, ale nie numerowany. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p["NazwanyCiągiem"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyCiągiem}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwany parametr, tzn. określony łańcuchem znaków: <syntaxhighlight lang="lua"> p["NazwanyCiągiem"] = function (frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyCiągiem|nazwa1}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość|nazwa2=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nazwane|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry, tzn. o kluczach {{Code|nazwa1}} i {{Code|nazwa2}} posiadający wartości, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nienazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nienazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwane parametry (oznaczone liczbami naturalnymi) o wartościach takich jak, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nienazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nienazwane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=wartość1|6=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry nienazwane o wartościach takich, tzn. {{Code|wartość1}} i {{Code|wartość2}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nienazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Numerowane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Numerowane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano takie numerowane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Numerowane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Numerowane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|wartość2|wartość3}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry numerowane (tzn. numerowane od jedynki bez przerw) o wartościach takich, tzn. {{Code|wartość2}} i {{Code|wartość3}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Numerowane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. == Funkcje manipulowania formatów łańcuchów znakowych == === {{Code|p["Odstępy"](frame)}} === ==== Odpowiednik szablonowy ==== Odpowiednik szablonowy {{s|Odstępy}} ma te same parametry, co jej odpowiednik ramkowy funkcyjny: {{Code|{{m|Parametry|Odstępy}}}}. Przykładami wywołania funkcji są: Poniższe przykłady są pokazane za pomocą szablonu {{s|Pre}}. ; Przykład pierwszy {{Pre|{{s|Odstępy| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz już nie. ---- ; Przykład drugi {{Pre|{{s|Odstępy|wewnątrz{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony spacją. ---- ; Przykład trzeci {{Pre|{{s|Odstępy|wewnątrz{{=}}tak|dolny-myślnik{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak|dolny-myślnik=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony na dolny myślnik. ==== Funkcja biblioteczna ==== Funkcja usuwa białe znaki i dolne myślniki na końcach podanego ciągu, ale też ewentualnie można przy pomocy tej funkcji zamieniać też te znaki wewnątrz ciągu, o ile nie jest już pusty po poprzedniej operacji, i zamienia ich na jedną spację lub dolny myślnik. <syntaxhighlight lang="lua"> p["Odstępy"] = function(frame)...end; </syntaxhighlight> Parametry funkcji: * {{Code|1}} lub {{Code|nazwa}} - określa podany ciąg, któremu domyślnie są usuwane białe znaki lub dolne myślniki na końcach łańcucha, * {{Code|2}} lub {{Code|wewnątrz}} - czy ma również robić te same operacje, co powyżej domyślną, tylko że wewnątrz ciągu, * {{Code|3}} lub {{Code|dolny-myślnik}} - czy ma zamieniać, spacje i dolne myślniki (jeżeli je wykrywa, patrz parametr poniżej), na dolne myślniki, * {{Code|4}} lub {{Code|spacje}} - czy na końcach i wewnątrz ciągu ma wykrywać, do zamieniania, tylko odstępy, a nie również dolne myślniki. Funkcja zwraca przekształcony ciąg powyższymi metodami. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local nazwa2=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ",}; local nazwa3=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",}; local nazwa4=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",["dolny-myślnik"]="tak",}; </syntaxhighlight> W pierwszym i drugiej wartości w naszym wypadku funkcja zwróci wartość: <syntaxhighlight lang="lua"> local nazwa2="Oto jest łańcuch."; local nazwa3="Oto jest łańcuch."; local nazwa4="Oto_jest_łańcuch."; </syntaxhighlight> == Funkcje dodawania lub usuwania elementu do tabeli zbioru == === {{Code|p.DodajElementDoZbioru()}} === Funkcja dodaje element do zbioru, czyli do tablicy numerowanej: {{Code|tabela}}, wartość: {{Code|wartość}}. Jej definicji jest: <syntaxhighlight lang="lua"> function p.DodajElementDoZbioru(tabela,wartosc)...end; </syntaxhighlight> Przykładem użycia funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={}; --- Tutaj zwraca true; local tak1=parametry_modul.DodajElementDoZbioru(tabela,"wartość1"); --- Tutaj zwraca true; local tak2=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); --- Tutaj zwraca false; local tak3=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); </syntaxhighlight> Elementami tej tabeli są: <syntaxhighlight lang="lua"> local tabela={"wartość1","wartość2",}; </syntaxhighlight> Funkcja zbiera tylko niepowtarzające się wartości, w takim wypadku zwraca wartość {{Code|true}}, w przeciwnym wypadku {{Code|false}}. == Funkcje istnienia elementów tabeli == === {{Code|p.CzyJestTakiElementNumerowanyTabeli()}} === Funkcja sprawdza, czy jest taki element numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNumerowanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, numerowanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi od jedynki bez przerw z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={"wartość1","wartość2","wartość3",5,8,"wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementNienazwanyTabeli()}} === Funkcja sprawdza, czy jest taki element nienazwany, niekoniecznie numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNienazwanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nienazwanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi niekoniecznie od jedynki mogący być z przerwami z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={[2]="wartość1",[5]="wartość2",[10]="wartość3",[80]=5,[90]=8,[100]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNienazwanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiKluczTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu o dowolnej wartości. <syntaxhighlight lang="lua"> function p.CzyJestTakiKluczTabeli(tabela,klucz)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nazwanych, dla której sprawdzamy, czy jakiś element jego o danym kluczy {{Code|klucz}}, o dowolnej wartości. Zaużmy, że naszą tabelą jest tabela elementów nazwanych z kluczami i przydzielonymi im wartościom. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiKluczTabeli(tabela,"nazwa5"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu {{Code|klucz}} i wartości {{Code|wartość}} dla elementów w danej tabeli. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeli(tabela,klucz,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} o parametrach niekoniecznie nazwanych, ale on równie dobrze może składać się z elementów nienazwanych, jak i numerowanych. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementTabeli(tabela,"nazwa5",8); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. == Łączenie wielu tabel == === {{Code|p["ŁączDwieTabele"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane jak i nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączDwieTabele"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączDwieTabele"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNumerowanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy ponumerowane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNumerowanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNumerowanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNienazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNienazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNienazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączNumerowaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele ponumerowane. <syntaxhighlight lang="lua"> p["ŁączNumerowaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNumerowaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączNienazwaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele określone liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączNienazwaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNienazwaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączTabele"]()}} === Funkcja łączy tabele ogólnie nazwane, określone w tablicy {{Code|args2}}, względem parametrów określonych w tablicy {{Code|args2}}. Definicja jej jest: <syntaxhighlight lang="lua"> p["ŁączTabele"] = function(args,args2)...end; </syntaxhighlight> Funkcja łączy jedynie tabele ponumerowane liczbami naturalnymi, czy to w sposób nienazwany, też za pomocą tych liczb, ale wtedy numeracja nie musi być od jedynki i ona może mieć przerwy. Parametry (elementy) tabeli {{Code|args2}} są: * {{Code|args2.CzyPairsTablic}} - jeśli prawdziwa, to określa nazwane elementy tabel w tabeli {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2["CzyPairsElementówTablic"]}} - jeśli prawdziwa, to określa nazwane elementy poszczególnych tabel w tablicy ogólnie nazwanej w {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2.CzyNazwaneElementyTabel}} - jeśli prawdziwe, łączy nazwane elementy tabel, mogą być określone liczbami naturalnymi, lub nie, w jedną tablicę, * {{Code|args2.CzyTylkoNazwaneElementyTabel}} - jeśli niepuste, łączy tylko nazwane elementy tabel, * {{Code|args2.NazwijElementyNumerowane}} - jeśli prawdziwe, to wśród elementów nienazwanych elementy numerowane traktuje je jako nazwane, w przeciwnym wypadku takie elementy dodaje do zbioru elementów numerowanych łączonych tablic. Przykładami wykorzystania tej funkcji są funkcje łączenia tabel zdefiniowane w funkcjach powyżej, tzn. zdefiniowane w: * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel ponumerowanych. Powyższe funkcje elementy nienazwane łączy w zbiory, ale nie jako elementy nazwane, tylko jako ponumerowane. {{Hr}} * {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}} - łączy tabele ponumerowane, * {{Code|{{sr|#p["ŁączNienazwaneTabele"]()|p=Parametry}}}} - łączy tabele określone liczbami naturalnymi. Powyższe funkcje łączą w sposób dokładny wiele tabel, niezależnie z jak nazwanymi elementami, te nazwane jest nie tylko określone liczbami naturalnymi (one nie muszą być ponumerowane), ale też łańcuchami. {{Hr}} Działanie tych funkcji w powyższej wyliczance można rozszyfrować na podstawie ich nazw podanych w nawiasach kwadratowych w cudzysłowach. == Funkcje dodawania lub usuwania elementów z tabeli o takich kluczach == === {{Code|p["UsuńElementyTabeli"]()}} === Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["UsuńElementyTabeli"]=function(tabelka_1,tabelka_2)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabelka_koncowa=parametry_modul["UsuńElementyTabeli"](tabelka_1,tabelka_2); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to ma taką referencję, co {{Code|tabelka_1}}, ma elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Tworzenie tabeli == === {{Code|p["TwórzTabelęBezPowtarzającychKluczyTabel"]()}} === Funkcja jest analogiem do funkcji {{Code|{{sr|#p["UsuńElementyTabeli"]()|p=Parametry}}}}. Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["TwórzTabelęBezPowtarzającychKluczyTabel"]=function(args)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabela_args={tabelka_1,tabelka_2,}; local tabelka_koncowa=parametry_modul["TwórzTabelęBezPowtarzającychKluczyTabel"](tabelka_args); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to nie ma takiej samej referencji, co {{Code|tabelka_1}}, tylko inną, ma za to elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Funkcje typu == === {{Code|p.TypeTable()}} === Funkcja sprawdza, czy typem zmiennej jest tabela w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeTable(zmienna) return (type(zmienna)=="table"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={"wartość1","wartosc2",["nazwa1"]="wartość3",} local czy_tak=parametry_modul.TypeTable(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeFunction()}} === Funkcja sprawdza, czy typem zmiennej jest funkcja w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeFunction(zmienna) return (type(zmienna)=="function"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local funkcja=function(frame)return true;end; local czy_tak=parametry_modul.TypeFunction(funkcja); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeString()}} === Funkcja sprawdza, czy typem zmiennej jest łańcuch znakowy w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeString(zmienna) return (type(zmienna)=="string"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local str="wartość"; local czy_tak=parametry_modul.TypeString(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeBoolean()}} === Funkcja sprawdza, czy typem zmiennej jest typ logiczny w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeBoolean(zmienna) return (type(zmienna)=="boolean"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_jest_tam=false; local czy_tak=parametry_modul.TypeBoolean(czy_jest_tam); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNumber()}} === Funkcja sprawdza, czy typem zmiennej jest liczba w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNumber(zmienna) return (type(zmienna)=="number"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local liczba=2; local czy_tak=parametry_modul.TypeNumber(liczba); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNil()}} === Funkcja sprawdza, czy typem zmiennej jest zmienna z przydzieloną wartością, której jest {{Code|nil}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNil(zmienna) return (type(zmienna)=="nil"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_nil=nil; local czy_tak=parametry_modul.TypeNil(czy_nil); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> == Funkcje prawdy i fałszu == W funkcjach {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} uruchomione w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} muszą posiadać dodatkowo parametr {{Parametr|wyspecjalizowana|tak}}, aby dało się w je wsadzić skutecznie parametry do samej tej ramki dziecka, a nie używać parametry szablonu rodzica. === {{Code|CzyTakSilnik(args,funkcja)}} === Funkcja pomocnicza służąca do liczenia wartości logicznej {{Code|tak}} lub {{Code|nil}} parametrów ramki, w wikikodzie, funkcji {{lpg|lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> local function CzyTakSilnik(args,funkcja)...end; </syntaxhighlight> Możliwymi wartościami funkcji parametru {{Code|funkcja}} jest {{Code|CzyTak}} lub {{Code|CzyTakCiąg}} (ta funkcja wykorzystuje funkcję {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} do swojego argumentu, który służy do sprawdzania, jaki spełnia warunek). Gdy istnieje parametr tablicy {{Code|args}} funkcji o parametrze nienazwanym {{Code|args[2]}}, to ona zbiera argumenty ramki nazwane jak nazwane, tzn. klucze i ich wartości przypisuje, a w przypadku parametrów nienazwanych (nie są zbierane elementy w tej tablicy o kluczach o wartości: {{Code|1}} i {{Code|2}}), ich klucze są pomniejszane o dwa, w ten sposób jest utworzona tabela {{Code|argsfun}}. Dla {{Code|args[2]}} funkcja uruchamia bibliotekę o tej właśnie nazwie, a w niej funkcję określoną argumentem {{Code|args[1]}}. Gdy nie ma składowej drugiej tablicy, tzn. {{Code|args[2]}}, to wtedy funkcja sprawdza, czy {{Code|args[1]}} to jest liczba w łańcuchu znakowym, lub bezpośrednio liczba, a jeżeli nie da się jej przetransformować na liczbę, to sprawdza, czy typem tej zmiennej jest {{Code|string}} (czy typem jest szereg), po działaniu funkcją: {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} , jeśli ma wtedy o wartość: {{Code|"true"}}, wtedy ta zmienna przyjmuje wartość {{Code|true}}, {{Code|"false"}}, wtedy {{Code|false}}, {{Code|"nil"}}, wtedy {{Code|nil}}. A jeżeli ta zmienna żadnej tej wartości nie przyjmuje z tych wartości, to wtedy jest transformowana na liczbę, jeżeli da się tą operację dokonać. Na samym końcu jest liczona wartość logiczna z przygotowanymi parametrami, według jednej z dwóch specjalnie przygotowanych funkcji w postaci wywołania ogólnego: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); return (parametry_modul[funkcja]{[1]=parametr,[2]=argsfun,})and "tak" or nil; </syntaxhighlight> Gdzie {{Code|funkcja}}, to {{Code|CzyTak}} lub {{Code|CzyTakCiąg}}, a {{Code|parametr}}, to funkcja w jakimś module lub inna wartość, a {{Code|argsfun}}, to tabela argumentów ramki, dziecka, w kodzie {{lpg|Lua}} w {{lpr|Scribunto}}, w wikikodzie w szablonie w rodzicu. Gdy ta funkcja zwróci wartość logiczną odpowiadającą {{Code|true}}, to wtedy zwraca {{Code|tak}}, w przeciwnym wypadku {{Code|nil}}. Ta funkcja jest wykorzystywana, gdy jest uruchamiana w ramce, gdy mamy parametry ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wyspecjalizowana=tak}} </syntaxhighlight> Podobnie jest z funkcją {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A jak jest tworzony parametr zmiennej z powyższych wywołań, to jest powiedziane powyżej. Równie dobrze możemy zefiniowć atrapę funkcji {{Code|frame.getParent}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"]{args={ [1]=" Wartość ", [2]="", ["nazwa1"]="wartość1", ["nazwa2"]="wartość2", [3]="wartość3", [4]="wartość4", ["wyspecjalizowana"]="tak", }, getParent=function()end, }; </syntaxhighlight> Czasami tak potrzeba robić, by ominąc zabezpieczenia pewnych funkcji, nawet tutaj. === {{Code|p["CzyTakCiąg"](...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p["CzyTakCiąg"]=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi pustemu, mimo że funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} zwróci wartość {{Code|tak}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|nil}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość podana zawiera znaki nierówne odstępowi, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. === {{Code|p.CzyTak(...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania nie wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}}, tak jak to robi {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p.CzyTak=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi {{Code|tak}}, mimo że funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} zwróci wartość równoważną ciągowi pustemu. <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak||wyspecjalizowana=tak}} </syntaxhighlight> Ta funkcja uruchomiona w ramce w wikikodzie zwraca wartość równą ciągowi pustemu, tak samo, jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}, niezależnie, czy tym ciągiem jest szereg składający się z samych znaków odstępów. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(""); </syntaxhighlight> Ta funkcja wtedy zwróci wartość równą {{Code|nil}} w kodzie {{lpg|Lua}} w {{lpg|Lua|Scribunto}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość, czy jest nierówna ciągowi pustemu, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. == Funkcje parametrów == === {{Code|p.PobierzFrameEwentualnieParent(frame)}} === Argument tej funkcji {{Code|frame}} koniecznie musi być tablicą, w przypadku przeciwnym wywoła to błąd języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzFrameEwentualnieParent(frame)...end; </syntaxhighlight> Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(frame).args; .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdy by funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu jest taka niedogodność, że jedynie jest taka nieprawidłowość, że w przypadku parametru tablicy ramki tablicy transportu należy podawać uzyskanej element {{Code|args}}, a w przypadku zwykłej tablicy już nie, tą niedokodność rozwiązuje funkcja, taka że w obu przypadkach działa, jest funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. === {{Code|p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)}} === Argument tej funkcji {{Code|frame}} koniecznie nie musi być tablicą, bo wtedy nie wywoła to błędu języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}, bo przedtem sprawdzana jest w tej funkcji, czy jest to tablica. W definicji tej funkcji zmienna uzyskana z funkcji: {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}, a jeśli jej składowa {{Code|args}} jest tablicą, to jest właśnie ona zwracana, a jeśli istnieje, ale nie jest tablicą, lub ona nie istnieje, to wtedy brana jest właśnie wartość tablicowa {{Code|frame}}, jeśli jest ona taka, a gdy nie, to wtedy z tej funkcji tutaj nie korzystamy. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)...end; </syntaxhighlight> Funkcja wykorzystuje wspomnianą powyżej funkcję do swojego działania, ona jest wtedy aktywowana, gdy zmienna {{Code|frame}} jest tablicą, i jest sprawdzane, czy ona posiada nazwany element o kluczu {{Code|args}}, i czy jest on tablicowy. Jeżeli wartością zmiennej {{Code|frame}} nie jest tablica, ale nie przybiera wartości {{Code|nil}}, to ona jest umieszczana w tablicy, jeżeli zmiennej {{Code|czy_nie_tablica_jako_tablica}} przydzielimy wartość {{Code|true}}, w przeciwnym wypadku zwracana jest ona w postaci niezmienionej, a jeżeli wartość tej zmiennej nie istnieje, to zwracana jest zwykła tablica pusta. Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdyby funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu tych przypadków nie ma żadnej niedogodności, jak to występowała w {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}. Jeśliby do funkcji tablicy transportu dać wartość równą nie tablicy, to wtedy równoważnie możemy napisać: <syntaxhighlight lang="lua"> local wartosc="wartość"; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> to wtedy definicję tej funkcji piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local wartosc=args[1]; end; </syntaxhighlight> lub równoważnie możemy zapisać: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local wartosc=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> A jeżeli nie wsadziliśmy żadnej wartości do funkcji ramki tablicy transportu lub tą wartością jest {{Code|nil}}, wtedy: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](); </syntaxhighlight> wtedy definicja tej funkcji wygląda: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); -- Zmienna: args, wskazuje na wartość, którą jest tablicą pustą, tzn. w tej tablicy nie ma wcale elementów; local args=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> Widzimy, że wtedy zmienna {{Code|args}} jest normalną pustą tablicą, i nie musimy wtedy wcale pisać poniżej, bo wtedy wychodzi w tym przypadku na to samo: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); </syntaxhighlight> Argument drugi w {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, który w naszym przypadku musi mieć wartość {{Code|true}}, a wtedy jest jedynie sens, gdy {{Code|frame}} nie jest tablicą, i gdy chcemy tą wartość umieścić w tablicy, a nie powtórzyć wartość, tzn. napisać: {{Code|{{(}}frame,{{)}}}}, w przeciwnym wypadku musilibyśmy napisać coś w rodzaju, zamiast tak spreparowanej tablicy: {{Code|frame}}, czyli: <syntaxhighlight lang="lua"> -- Pierwszy przypadek, gdy frame jest wartością nietablicową; local parametry_modul=require("Module:Parametry"); ... -- Zwracana wartość: args, to nic innego niż: {frame,}; local args=parametry_modul.PobierzArgsParametry(frame,true); ... -- Zwracana wartość: args, to nic innego niż: frame, a nie {frame,}, jak poprzednio; local args=parametry_modul.PobierzArgsParametry(frame); </syntaxhighlight> === {{Code|p.PobierzParametryRamki(frame)}} === Funkcja służy do ustawienia pewnych domyślnych dwóch pewnych funkcji służących do pobieranie danych z tabelki z pierwszej tej funkcji, jeżeli ona posiada klucz o wartości {{Code|args}}, to zwracana jest ta właśnie tablica jako argument pierwszej tej funkcji, jeżeli jest w ogóle tablicą, w przeciwnym wypadku zwracana jest ta oryginalna tablica też jako argument tej funkcji, w przeciwnym dalszym wypadku zwracana jest zwracana wartość ta jako argument tej drugiej funkcji, która zwraca prawdziwą wartość z argumentu tylko za pierwszym razem, z tej funkcji, za następnym i dalszym razem {{Code|nil}}. Z tak utworzonej ogólnie większej funkcji wykorzystywana jest w budowie funkcja, która jest zwracana przez funkcję w tym nagłówku, która względem jego budowy wywołuje raz pierwszą albo drugą poprzednią wspomnianą funkcję zależną od rodzaju tabeli {{Code|frame}}. Ta funkcja zwracana przez funkcję w nagłówku przyjmuje argument, która jest kluczem do tych wspomnianych tabel (dokładnie, która tabelka to zależy od formatu tej naszej rozważanej zmiennej), a jeżeli to nie tabelka, co jest zwracane, to już zostało powiedziane. Definicja skrótowa tej funkcji jest: <syntaxhighlight lang="lua"> function p.PobierzParametryRamki(frame)...end; </syntaxhighlight> Weźmy ramkę sformułowaną w wikikodzie jako dziecko w szablonie rodzicu: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy tablica ramki tablicy transportu posiada właśnie {{Code|frame}} jest tablicą, i na pewno posiada tablicę o nazwie {{Code|args}}, to wtedy tę funkcję wywołaną w ramce, która wywołuje funkcję w nagłówku, formułujemy: <syntaxhighlight lang="lua"> local p={}; local p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); ... end; </syntaxhighlight> Równie dobrze funkcję z ramki można wywołać w sposób, co wtedy ta funkcja też zostanie wywołana pozytywnie: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}}; </syntaxhighlight> W tej funkcji nie trzeba definiować funkcji fałśzywej {{Code|getParent}}, w postaci: {{Code|getParent{{=}}function()end}}. Widzimi, że ta tablica posiada nazwę zmiennej tablicowej o nazwie {{Code|args}}, ale ona nie jest tablicą ramki tablicy transportu, ale tą tablicę możemy bezposrednio wsadzić w tą główną tablicę w samym argumencie funkcji. Równie dobrze możemy wywołać tę funkcję zdefiniowaną naszą w jakimś module w sposób: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local wynik=p["Nazwa funkcji"]{tabela); </syntaxhighlight> też ta funkcja prawidłowo się wywoła. W tym przypadku, jak i w przypadkach powyżej, wyniki uzyskuje się w następującym wywołaniach: <syntaxhighlight lang="lua"> --- Zmienna: wartosc1, przyjmuje wartość: "wartość1"; local wartosc1=PobierzParametryRamki("nazwa1"); --- Zmienna: wartosc2, przyjmuje wartość: "wartość2"; local wartosc2=PobierzParametryRamki("nazwa2"); --- Zmienna: wartosc3, przyjmuje wartość: "wartość3"; local wartosc3=PobierzParametryRamki(1); </syntaxhighlight> W innym przypadku wywołań funkcji ramki jest wsadzenie do niej zwykłego nietablicowego elementu, może być też to wartość: {{Code|nil}}. A to wywołanie jest: <syntaxhighlight lang="lua"> local wartosc="wartość"; --Zmienna: wartosc, nie jest w tym przypadku tablicą; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> Wtedy w tej ramce w celu uzyskania jakikolwiek wartości jest przykład wywołania tej funkcji zwracanej przez funkcję w ramce z argumentem pustym. <syntaxhighlight lang="lua"> -- Zmienna: wartość1, przyjmuje wartość: "wartość"; Jeżeli zmienna: wartosc, przyjmuje wartość: nil, to wywołanie rzuci: nil, i za każdym następny razem; local wartosc1=PobierzParametryRamki(); -- Zmienna: wartość2, przyjmuje wartość: nil; local wartosc2=PobierzParametryRamki(); </syntaxhighlight> W wywołaniach powinno dbać się o właściwą kolejność wywołań, bo argumentem funkcji z tablicy transportu może być zwykła tablicowa wartość. Najpierw uzyskujemy wartości nietablicowe, a później tablicowe, na wypadek niewiadomej {{Code|frame}} jakiego typu ma być wartość. Też ta zmienna może istnieć pod kilkoma możliwymi kluczami, lub tą zmienną może być jedyny argument funkcji, która jest nietablicową wartością, wtedy ją się wywołuje jako dla przypadku, gdy parametr jest nietablicowy lub jest pod kluczem {{Code|tekst}}: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)("tekst"); </syntaxhighlight> Lub chcemy tą funkcję wywołać bezparametrowo, gdy chcemy, by {{Code|frame}} nie była tablicą: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)(); </syntaxhighlight> Wtedy ta zmienna w przedostatnim przykładzie jest pod wartością {{Code|tekst}}, gdy wartość {{Code|frame}} jest tablicą, lub może być jedyną wartością, którą jest {{Code|frame}} jako zmienna nietablicowa, wtedy ta zmienna nie jest pod {{Code|tekst}}, ta funkcja uzyskana z: {{Code|{{sr|#p.PobierzParametryRamki(frame)|p=Parametry}}}}, wtedy może być wywołana tylko raz z nienilową wartością zwracaną, następnym razem zwraca wartość {{Code|nil}}, wtedy to dotyczy przedostatniego i ostatniego przykładu. Jeżeli {{Code|frame}} jest nietablicowa, to wtedy wartość {{Code|tekst}} jest taka sama, co {{Code|frame}}. A jeżeli jest tablicą, to ta wartością jest {{Code|frame.args["tekst"]}}, lub gdy {{Code|args}} nie istnieje, lub istnieje, ale jest nietablicowa, to wtedy ta wartość jest {{Code|frame["tekst"]}}. A gdy zmienne istnieją pod wieloma kluczami, lub gdy funkcję wywołano ze zmienną nietablicową, wtedy ogólnie możemy dla przykładu powiedzieć: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); local wartosc1=PobierzParametryRamki("nazwa1") or PobierzParametryRamki(1); local wartosc2=PobierzParametryRamki("nazwa2") or PobierzParametryRamki(2); local wartosc3=PobierzParametryRamki("nazwa3") or PobierzParametryRamki(3); </syntaxhighlight> Wtedy ta zmienna jest pod kluczem, np.: {{Code|nazwa1}} lub {{Code|1}}, tablicy ramki {{Code|frame}} tablicy transportu, następne wywołania dla następnych kluczy też zrzucą pewne wartości, lub jest ona zwykłą nietablicową wartością mogącą być równą nawet {{Code|nil}}. Następne wywołania uzyskanej tak funkcji w przypadku, gdy {{Code|frame}} jest nietablicowy, rzucać będzie z samej definicji funkcji wartości {{Code|nil}}, czyli {{Code|wartosc2{{=}}wartosc3{{=}}nil}}, ale za to wartość {{Code|wartosc1}} nie musi być, ale może, wartością {{Code|nil}}, jest tą wartością, gdy {{Code|frame{{=}}nil}}, w przeciwnym wypadku za pierwszym razem tej wartości nietablicowej wartość nie {{Code|nil}}, a za drugim i dalszym zawsze wartość {{Code|nil}}. === {{Code|p.PobierzElementNumerowanyZFrameLubTablicy(frame)}} === Definicja skrótowa funkcji jest z parametrem charakteryzującym pewien zestaw zmiennych {{Code|frame}}, które nie jest tablicą ramki tablicy transportu, tylko innym parametrem, który jest tablicą parametrów podanych do funkcji, nawet gdy parametrem podanym do funkcji jest jedyna zmienna będąca tablicą ramki, ale z drugiej strony tak nie musi być, może być to rozbudowany zestaw zmiennych, np. nazwanych i nienazwanych, którego wszystkie sposoby podawania łączymy jednym sposobem podawania. Mimo że parametry funkcji są parametrami nienazwanymi, mogą być one ponumerowane, ale zmienna może przyjmować wartość tą samą na różne sposoby, raz w sposób nazwany, a za innym sposobem jako nienazwany. Ogólnie ostateczne parametry łączymy w dane parametry za pomocą jednego sposobu, tzn. za pomocą tej funkcji, i tak uzyskanej tablicy {{Code|args}}, także za pomocą spójnika {{Code|or}}, pisząc np. {{Code|nazwa1{{=}}args["nazwa1"] or args[1]}}, gdzie np. w tym przykładzie wartość klucza {{Code|nazwa1}} o pewnej wartości, która jest wartością z tablicy podaną jako tylko jeden parametr do funkcji w jakimś sposobie podawania argumentów, a {{Code|args[1]}}, jest to pierwszy parametr funkcji, jeżeli w funkcji zmienne podajemy w postaci wielu parametrów, znów jeszcze w innym sposobie realizacji argumentów w argumencie w tej samej funkcji. A ten wspomniany skrót wygląda: <syntaxhighlight lang="lua"> function p.PobierzElementNumerowanyZFrameLubTablicy(frame)...end; </syntaxhighlight> Weźmy najprostszy sposób realizacji tej funkcji, w realizacji: {{Code|1-1, 2-2, 3-3}}, czyli ten opis jest zaraz poniżej. Weźmy funkcję, którą można wywoływać z wieloma parametrami, jak i w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, którą przykładowo piszemy jego wywołanie wewnątrz innej funkcji na pięć sposobów, czyli teraz pierwszy sposób z tylko z parametrem, więc tablicą ramki tablicy transportu wywodzącą się z ramki uruchomioną w wikikodzie w jakimś szablonie rodzicu: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](frame); </syntaxhighlight> a teraz drugi sposób, pisząc, bezpośrednio inaczej formułując wywołanie tej funkcji, używając zmiennych tablicowych tablicy ramki, ale to nie jest tak naprawdę tablica ramka tablicy transportu, tylko parametr podany bezpośrednio do funkcji, tak jak się to robi w języku {{lpg|Lua}}, nie jak w przykładzie powyżej, więc: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={"wartość1","wartość2","wartość3",},}; </syntaxhighlight> Lub równoważnie, pisząc, nie używając zmiennej {{Code|args}}: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{"wartość1","wartość2","wartość3",}; </syntaxhighlight> Albo te parametry wsadzając do funkcji: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]("wartość1","wartość2","wartość3"); </syntaxhighlight> Można też wywołać to wszystko w ramce, {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikdzie, wtedy wsadzając parametry do ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|wartość1|wartość2|wartość3}} </syntaxhighlight> A jak połączyć wszystkie te pięć sposobów, posługiwać się tymi sposobami wewnątrz funkcji {{Code|Nazwa funkcji}} w sposób jednolity, jedynie wtedy należy skorzystać z funkcji z definiowaną w jakimś module w sposób: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); ... end; </syntaxhighlight> Wtedy za pomocą zmiennych {{Code|args}} dostaliśmy się do parametrów, zdefiniowaną w tablicy {{Code|tablica_prametrow_funkcji}}, która jest nic innym jak zestawem parametrów w funkcji: {{Code|Nazwa funkcji}}. W pierwszym i drugim sposobem zmienna ta {{Code|args}} jest zmienną z podtablicy innego {{Code|args}} przekazanych jako parametr tablicy do funkcji, w trzecim sposobie tą zmienną jest cała tablica, a czwartym jest zestaw parametrów. A czym się różnią się te sposoby, a więc te sposoby można powiązać jedną tylko funkcją powiedzianą w nagłówku według przykładu podaną zaraz powyżej, wtedy możemy dostawać się do tych samych zmiennych o takich samych nazwach i wartościach, ale w różnych reprezentacjach na różne sposoby, wtedy można powiedzieć, że: <syntaxhighlight lang="lua"> args[1]="wartość1"; args[2]="wartość2"; args[3]="wartość3"; </syntaxhighlight> Czyli w wyniku działania funkcji w nagłówku, otrzymamy tablicę {{Code|args}}, której wynikiem jest zestaw zmiennych ponumerowanych, ogólnie nienazwanych, któremu wartością odpowiadają te podane w ramce ostatniej powyżej. Na podstawie tego wiemy, jak działa funkcja ta z nagłówka. Pisząc w inny sposób, można też wskazywać: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); local wartosc1=args["nazwa1"] or args[1]; local wartosc2=args["nazwa2"] or args[2]; local wartosc3=args["nazwa3"] or args[3]; end; </syntaxhighlight> Zmienne w przykładzie o kluczach {{Code|nazwa1}}, {{Code|nazwa2}} i {{Code|nazwa3}}, posiadające pewne swoje wartości, to są zmienne w tablicy {{Code|args}}, podane też jako zmienna, pewną tablicę jako argument (parametr) funkcji, jeżeli argumenty podano w postaci jednego parametru funkcji w postaci pewnej tablicy z np. elementami nazwanymi, lub jako wiele argumentów w ramce, w wikikodzie, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w pewnym szablonie, a rozpatrując dalej elementy: {{Code|1}}, {{Code|2}} i {{Code|3}}, to jest numer parametru, jeżeli argumenty do funkcji podano w postaci wielu jego parametrów. === {{Code|p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)}} === Ta funkcja zwraca znów inną funkcję, która ma jedyny parametr, mówiący jakiego parametru poszukujemy, co jest wyjaśnione w definicji funkcji z nagłówka, że ona zwraca tą właśnie funkcje, czyli: <syntaxhighlight lang="lua"> function p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame) ... return function(nazwa) return __pobierz_parametr_table_args(nazwa); end; end; </syntaxhighlight> Funkcja zwraca jednocześnie, ta zwrócona z funkcji z nagłówka, dwa parametry, prawdziwą wartość, i numer metody w postaci: {{Code|return wartosc, numer _metody}}. Ta funkcja zwracana ma w swojej definicji inną jeszcze funkcję z tym samym parametrem, co jego rodzic, i to jest za każdym razem inna funkcja w zależności z jakim typem danych się posługujemy {{Code|frame}} i jakie podaliśmy parametry, tzn. pod warunkiem, gdy zmienna {{Code|frame}} jest tablicą, czyli te zmienne druga: {{Code|czy_frame_lub_parent}} (jeżeli funkcja jest uruchomiona w ramce w szablonie, jeżeli wartość {{Code|true}}, to ona wybiera raz parametr z: {{Code|frame.args[nazwa or 1]}}, a za innym razem z {{Code|pf.args[nazwa or 1]}}, gdzie {{Code|pf{{=}}frame:getParent()}}, tutaj jest zwracana wartość: {{Code|return wartosc,2}}), czy trzecia: {{Code|czy_frame}} (która mówi, jeżeli funkcję uruchomiono w ramce, ale przy wartości fałszywej tego pierwszego podanego parametru, mówi, że przy wartości {{Code|true}} tego parametru, wybierana jest zawsze wartość {{Code|frame.args[nazwa or 1}}}, w przeciwnym wypadku uruchamiana jest funkcja {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, tutaj zwracana jest wartość {{Code|return wartosc,1}}). Jeżeli wartością {{Code|frame}} jest wartość nietablicowa, ale niebędącą wartością {{Code|nil}}, wtedy ustawiana jest funkcja, która tylko za pierwszym razem zwraca nienilową wartość {{Code|return wartosc,0}}, a później zwraca wartość {{Code|return nil,0}}. Gdy wartością {{Code|frame}} jest {{Code|nil}}, to funkcja zawsze wraca tą wartość {{Code|return nil,0}}. Powyższy sposób działa również dobrze, gdy zdefiniujemy w parametrach funkcji fałszywą funkcję {{Code|frame.getParent}}. Gdy funkcja nie jest uruchamiana w ramce lub funkcja {{Code|frame.getParent}} nie jest zdefiniowana, to wtedy funkcja wchodzi zawsze w ten krok pętli, jakby {{Code|czy_frame_lub_parent}} było {{Code|false}} według tego powyżej, to wtedy brana jest zmienna {{Code|czy_frame}}, i jaką wartość ona przyjmuje. Funkcję pisze się według sposobu, którą się wywołuje według: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc1=PobierzParametr("nazwa1") or PobierzParametr(1); local wartosc2=PobierzParametr("nazwa2") or PobierzParametr(2); local wartosc3=PobierzParametr("nazwa3") or PobierzParametr(3); </syntaxhighlight> Na wypadek wartości nietabelowej, tą wartość zapisuje się jako pierwszą w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, a dla wartości tabelowych, jaka jest kolejność to jest obojętne, byle by to było sensowne. Tą funkcję podobnie się wywołuje jak funkcję: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. Wartością {{Code|frame}} nie musibyć tablica ramki tablicy transportu, równie dobrze może być to dowolna tablica lub wartość nietablicowa. Weźmy ramkę, w której uruchamiamy funkcję ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> Ona musi być wywołana z parametrem {{Parametr|wyspecjalizowana|tak}}, jako podpowiedź, że liczą sie parametry ramki dziecka, a nie jego rodzica, czyli szablonu. Wtedy funkcję {{Code|Nazwa funkcji}} definiujemy: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,true); ... end; </syntaxhighlight> Wtedy parametr {{Parametr|wyspecjalizowana|tak}} jest ignorowany, a przy wartości {{Code|false}} drugiego parametru funkcji, czyli wywołania: {{Code|local PobierzParametr{{=}}parametry_modul.PobierzParametr(frame,false);}}, już nie, ale nie zawsze. W takim przypadku raz jest brana wartość, jeżeli istnieje, z {{Code|frame.args}}, a jak nie to z: {{Code|pf.args}}. Weźmy inny przypadek: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,true); ... end; </syntaxhighlight> Przy tym też parametr: {{Parametr|wyspecjalizowana|tak}}, jest ignorowany, wtedy jest zawsze wybierana do rozważań tablica: {{Code|frame.args}}. Znów w innym przypadku, gdzie parametr: {{Parametr|wyspecjalizowana|tak}}, jest zawsze rozważany w naszym wypadku: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,false); ... end; </syntaxhighlight> To to wywołanie, wtedy dokładnie działa jak funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, a zwrócona funkcja: {{Code|PobierzParametr}} pobiera elementy z tak uzyskanej tablicy {{Code|args}}. W przypadku, gdy {{Code|frame}} nie jest tablicą, wtedy parametry: {{Code|czy_frame_lub_parent}} i {{Code|czy_frame}}, są w takim przypadku zawsze ignorowane, ale muszą być ustawione na wypadek, gdy by do funkcji {{Code|Nazwa funkcji}} wsadzono tablicę, np.z ramki tablicę ramki tablicy transportu. Najprostszym często ogólnym przykładem, który prawie zawsze jest stosowany: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); ... end; </syntaxhighlight> Wtedy parametr: {{Parametr|wyspecjalizowana|tak}}, jest prawie zawsze nieignorowany, ale nie zawsze. == Funkcje wartości logicznej == Funkcje te wykorzystują funkcję: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, jeżeli mamy ciąg składający się z samych znaków odstępu, to funkcja zwraca wartość odpowiadający wartości: {{Code|false}}, a dla innych wartości to działa jak: {{Code|true}}, dla instrukcji warunkowej: {{Code|{{s|#if:coś|wtedy|przeciwnie}}}}. === {{Code|p.And(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|and}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli wszystkie z tych wartości są równe wartości {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.And(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1|wartość2|wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Or(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|or}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się, przynajmniej, któreś z nich, z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli z któreś z tych wartości jest {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Or(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|||}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Not(frame)}} === Funkcja działa jak operator logiczny operatorowy: {{Code|not}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartość składającą się z nie znaków odstępu i niebędący ciągiem pustym, na wartość składający się z ciągu pustego, i odwrotnie, czyli wartość pustą na wartość mający w sobie inne znaki niż odstępu. Funkcja zamienia wartość pierwszego parametru na wartość logiczną: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i zamienia ją na przeciwność, wartości {{Code|true}} odpowiada {{Code|tak}}, a {{Code|false}} odpowiada wartości pustej. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.Not(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|tak}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|nie}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|tak}}. == Funkcje porównań == === {{Code|p.Mniejszy(frame)}} === Funkcja zastępuje parser logiczny: {{Code|{{s|#expr:coś|wtedy|przeciwnie}}}}, dla porównania dwóch wartości logicznych, działa on szybciej niż ten parser, bo on musi uwzględniać skomplikowaność wyrażeń matematycznych do policzenia, a nasza funkcja w języku: {{lpg|lua}} w {{lpr|Lua|Scribunto}}, już nie. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Mniejszy(frame)...end; </syntaxhighlight> Funkcja sprawdza, czy spełniona jest wartość mniejszości pierwszego parametru liczbowego: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5|3}}|tak|nie}} </syntaxhighlight> Funkcja wtedy zrzuci wartość {{Code|nie}}, bo {{Code|5}} jest większe niż {{Code|3}}. Można też sprawdzić, czy liczba jest ujemna, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|-5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|tak}}. Można też sprawdzić, czy liczba jest dodatnia, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|nie}}. == Ile jest podanych elementów w szablonie według parametrów ramki == === {{Code|p.IlePodano(frame)}} === Funkcja sprawdza, ile jest podanych parametrów w parametrach rodzica szablonu z parametrów nazwanych lub nienazwanych, ale traktowanych jak nazwane, podanych w dziecku. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.IlePodano(frame)...end; </syntaxhighlight> Wywołanie szablonu, w której jest wywołana funkcja: {{Code|{{m|Parametry|IlePodano}}}}, jako z parametrami, i nie tylko, podanymi w ramce tej funkcji w tym szablonie: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy wywołanie w nim naszej funkcji bibliotecznej w postaci ramki wygląda, jako: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|IlePodano|nazwa1|nazwa3|2|nazwa4|5}} </syntaxhighlight> Funkcja zwróci wartość {{Code|3}}, a nie {{Code|5}}, bo trzy tylko parametry znaleziono w ramce wywołania szablonu, a parametr: {{Code|nazwa4}} i {{Code|5}}, tam wcale nie występują. == Metafunkcje i metatabele == Rozdział przedstawia metatabele i w niej zdefiniowane metafunkcje. === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter}} === Jest to zdefiniowana metatabelka, którego definicja i przyporządkowanie innej normalnej tablicy, wygląda: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter=parametry_modul.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter; local tablica_normalna={["nazwa1"]="wartosc1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",}; setmetatable(tablica_normalna,metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter); </syntaxhighlight> === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter.__index(t,klucz)}} === Jeżeli przyporządkujemy wartości {{Code|tablica_normalna}} metatabelkę z metafunkcjami, w tym przypadku metafunkcji {{Code|.__index(t,klucz)}}, wtedy możemy pisać wywołanie: <syntaxhighlight lang="lua"> local wartosc1=tablica_normalna["NAZWA1"]; </syntaxhighlight> Uzyskaną wartością jest: {{Code|wartość1}}, bo wartość: {{Code|NAZWA1}} jest zamieniana na małe litery w tym wywołaniu, ale powyżej podano wartość {{Code|nazwa1}} w tablicy {{Code|tablica_normalna}}, wtedy obie wartości są sobie równe, a więc uzyskamy taki wynik. == Iteratory == Poniższe operatory możemy wykorzystać w funkcjach: analogicznego do {{Code|ipairs}}, dla iteratora: {{Code|{{sr|#p.IteratorPoNumerowanychElementachTablicy(t)|p=Parametry}}}}, wynikłej z jego funkcji z wartości zwracanej, i analogicznego do {{Code|next}} (iteratora po kluczach) w {{Code|pairs}}, dla iteratora: {{Code|{{sr|#p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)|p=Parametry}}}}, wynikłe z jego funkcji z wartości zwracanej. === {{Code|p.IteratorPoNumerowanychElementachTablicy(t)}} === Iterator służy do iterowania po kolei liczb w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora. Można ją zdefiniować do obsługi innego iterowania po parametrach numerowanych, analogicznie do {{Code|ipairs}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorPoNumerowanychElementachTablicy(t) ... return function() ... end; end; </syntaxhighlight> Przykład działania iteratora jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={1,2,3,4,5,6,7,8,9,10,}; local iter=parametry_modul.IteratorPoNumerowanychElementachTablicy(tablica); for name, value in iter do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> === {{Code|p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)}} === Iterator służy do iterowania po kolei po zsortowanych kluczach po kolei alfabetycznie, którym są przyporządkowane wartości o pewnych tych kluczach w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora, metatabelki i metafunkcji w niej zdefiniowanej, gdzie: {{Code|funkcja}}, jest funkcją sortującą łańcuchy znakowe. Można ją zdefiniować do obsługi innego iterowania po parametrach nazwanych za pomocą: {{Code|pairs}}, definiując funkcję: {{Code|__next}}, analoga do {{Code|next}}, jako iteratora po kluczach posortowanych, która jest wartością zwracaną przez funkcję w nagłówku. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja) ... return function(tablica,klucz) ... end; end; </syntaxhighlight> Zdefiniujmy metatablicę z metafunkcją: {{Code|__pairs}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["D"]="wartość1",["A"]="wartość2",["F"]="wartość3",["C"]="wartość4",}; local __metatabelka={}; __metatabelka.__pairs=function(t) local funkcja_sortujaca=nil; local __next=parametry_modul.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(t,funkcja_sortujaca); return __next,t,nil; end; setmetatable(tabela,__metatabelka); for name,value in pairs(tabela) do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> == Funkcje wartości minimalnej i maksymalnej == === {{Code|p.Max(frame)}} === Funkcja liczy maksimum dwóch podanych wartości, podaną w jednostkach bezwymiarowyh. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Max|5|3}}}} → {{Tt|{{#invoke:Parametry|Max|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Max}} lub {{s|Maksimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Max|5|3}}}} → {{Tt|{{Max|5|3}}}} Ale tak nie jest, ona wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednoostkach bezwzględnych na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Max|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Max}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy maksimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich maksimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Max(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Max|5|3}} </syntaxhighlight> Wynikiem tego jest maksimum z tych liczb równą: {{Code|5}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia maksimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local maksimum=parametry_modul.Max(5,3); </syntaxhighlight> Wartością z dwóch liczb jest wartość maksymalna: {{Code|5}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. === {{Code|p.Min(frame)}} === Funkcja liczy minimum dwóch podanych liczb, podaną w jednostkach bwzwymiarowych. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Min|5|3}}}} → {{Tt|{{#invoke:Parametry|Min|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Min}} lub {{s|Minimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Min|5|3}}}} → {{Tt|{{Min|5|3}}}} Ale tak nie jest, ona wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednoostkach bezwzględnych na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Min|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Min}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy minimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich minimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Min(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Min|5|3}} </syntaxhighlight> Wynikiem tego jest minimum równą: {{Code|3}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia minimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local minimum=parametry_modul.Min(5,3); </syntaxhighlight> Wartością minimalną z dwóch liczb jest: {{Code|3}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> qd0d592fgrxpdmpdlrewy1zqdtms8wx 538654 538653 2026-03-31T13:23:06Z Persino 2851 /* Funkcje wartości minimalnej i maksymalnej */ 538654 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Parametry}}|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 parametry_modul=require("Module:Parametry"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Moduł: {{ld2|Parametry}}, służy do operowania na wszelkiego rodzaju parametrach, modyfikowaniu ich, a nawet podawania z funkcji z tablicy ramki tablicy transportu tego modułu, i innych funkcji z innych modułów, które wykorzystują funkcje parametru tego modułu. Będziemy mówili, że zbiór jest ponumerowany, gdy ma elementy nienazwane od jeden zwyż, bez przerw, do pewnego końca, wtedy jest to sekwencja w języku {{lpg|Lua}}, a jeżeli ona nie jest ponumerowana, to ma tylko elementy nienazwane, czyli wtedy nie jest sekwencją. Zbiór z elementami nienazwanymi (nazwane liczbami naturalnymi) może zawierać czasami elementy nazwane, ktorego nazwy nie są już takie, zwykle je się oznacza łańcuchami znakowymi, a w języku {{lpg|Lua}} to są po prostu elementy typu: {{Code|string}}, a liczby naturalne typu: {{Code|number}}. == Funkcje liczb elementów w tabeli == === {{Code|p["LiczbaElementówNumerowanychTablicy"]()}} === Funkcja liczy liczbę numerowanych od {{Code|1}}, one nie mogą mieć miedzy sobą przerw zaczynające się właśnie od tej liczby, czyli: {{Code|1,2,3,4,...}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, jeżeli {{Code|true}}, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1","nazwa2","nazwa3","nazwa4","nazwa5","nazwa6","nazwa7","nazwa8","nazwa9",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNumerowanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|9}}, ponieważ ma on mnóstwo parametrów nienazwanych, które jednocześnie są numerowane, czyli są one od {{Code|1}} i ciągną się bez przerw, aż do pewnej liczby. Powyższe wywołanie liczy liczbę parametrów numerowanych niepustych. === {{Code|p["LiczbaElementówNumerowanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNumerowanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ta zmienna niepusta, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusta. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaElementówNumerowanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwaa2|nazwa3|nazwa4|nazwa5|nazwa6|nazwa7|nazwa8|nazwa9}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nnumerowwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany od {{Code|1}} bez przerw. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. Jak można zauważyć, że ma on parametry numerowanych (zaczynające się od jedynki), które można znaleźć w parametrach szablonu, jeżeli tam w ogóle istnieją. === {{Code|p["LiczbaElementówNienazwanychTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą, niekoniecznie, mieć przerwy, np.:{{Code|3,10,15,..}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="nazwa1",[10]="nazwa2",[15]="nazwa3",[18]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNienazwanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|4}}, bo taka jest liczba parametrów nienazwanych, ale nie numerowanych. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych. === {{Code|p["LiczbaParametrówNienazwanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNienazwanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaParametrówNienazwanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ten argument niepusty, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusty. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaParametrówNienazwanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=nazwa1|10=nazwa2|15=nazwa3|18=nazwa4}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany, czy jest w liczbie większej niż {{Code|1}}. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. === {{Code|p["LiczbaElementówTablicy"]()}} === Funkcja liczy liczbę nienazwanych (numerowanych) i nazwanych elementów tablicy, a jeżeli parametr: {{Code|wliczac}}, jest podany, to liczy nie o zawartości niepustej. <syntaxhighlight lang="lua"> p["LiczbaElementówTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela do rozważań na problemy tej funkcji, * {{Code|wliczac}} - czy ma liczyć liczbę elementów niepustych, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={ 10, nazwa = 5, parametr = "tak", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_tablicy=parametry_modul["LiczbaElementówTablicy"](tabela,true); </syntaxhighlight> Policzona liczba elementów {{Code|liczba_elementow_tablicy}} jest {{Code|3}}. Powyższa funkcja liczy liczbę wszystkich parametrów niepustych w podanej tablicy. === {{Code|p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą mieć przerwy, np.: {{Code|3,10,15,..}}, liczbę elementów tablicy odpowiednio skonstruowanych, charakterystycznych dla tej funkcji. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). Należy też podać niepusty przedrostek, niebędący liczbą zakodowaną w łańcuchu. Należy wskazać funkcji, czy oczekujemy formy numerkowe w postaci czystych liczb, czy też również w postaci łańcuchów, które po przekształceniu na liczbę funkcją {{Code|tonumber}} stają się normalnymi liczbami {{lpg|Lua}}. <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]=function(tabela,przedrostek,wliczac,czy_formy_numerkowe)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|przedrostek}} - niepusty, niebędący liczbą łańcuchową, przedrostek, który ma być przed liczbą, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|czy_formy_numerkowe}} - czy wyszukiwane liczby przy pomocy funkcji {{Code|pairs}} są czystymi liczbami {{lpg|Lua}}. Funkcja liczy liczbę parametrów nienazwanych i nazwanych, ale z podanym przedrostkiem, lub nie, skonstruowanych z tych pierwszych. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="wartość1", [10]="wartosć2", [15]="wartość3", ["18"]="wartość4", ["nazwa2"] = "wartosc5", ["nazwa10"] = "wartość6", ["nazwa18"] = "wartość7", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy=parametry_modul["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"](tabela,"nazwa",true,false); </syntaxhighlight> Funkcja w postaci wartości {{Code|liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy}} zwróci liczbę {{Code|7}}. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych, z przedrostkiem lub nie, ale nie czysto numerkowych, ale również numerkowych (szeregi). == Funkcje minimalnej i maksymalnej wartości w tabeli == === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MaksymalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|10=nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik {{Code|20}}, ponieważ ta nazwa (klucz) parametru jest największa. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy maksymalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local maksymalna_wartosc_parametru_nienazwanego=parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|maksymalna_wartosc_parametru_nienazwanego}}: {{Code|20}}. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MinimalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|150nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci liczbę {{Code|4}}, ponieważ ta nazwa parametru najmniejsza. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MinimalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy minimalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MinimalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc_parametru_nienazwanego=parametry_modul.MinimalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|minimalna_wartosc_parametru_nienazwanego}}: {{Code|4}}. === {{Code|p.MinimalnyIMaksymalnyNumerParametru()}} === Funkcja liczy minimalny i maksymalny numer parametru nazwanego numerowany ze spację liczbami naturalnymi, może być od {{Code|0}}, określony liczbą, mający w sobie, niekoniecznie, przerwy, niekoniecznie zaczynający się jedynki, o pewnej podstawie. <syntaxhighlight lang="lua"> function p.MinimalnyIMaksymalnyNumerParametru(tabela,nazwa_parametru_okreslona)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|nazwa_parametru_okreslona}} - podstawa parametrów numerowanych, np.: dla parametrów: {{Code|nazwa 1}}. Przykładem wywołania jest dla parametrów o nazwach niepustych w tablicy: <syntaxhighlight lang="lua"> local tabela={["nazwa 4"]="tak",["nazwa 5"]="tak",["nazwa 10"]="tak",["nazwa 20"]="tak",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc,maksymalna_wartosc=parametry_modul.MinimalnyIMaksymalnyNumerParametru(tabela,"nazwa"); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrach: {{Code|minimalna_wartosc}} i {{Code|maksimum_wartosc}}, są kolejno: {{Code|4}} i {{Code|20}}. Jest to minmalna i maksymalna wartość dla liczb po spacji siedzące przy podstawach parametrów, która jest podana w parametrze drugim funkcji. == Funkcje, czy są takie parametry == Poniższe funkcje zwracają {{Code|tak}}, gdy coś znaleziono, gdy nic, to wartość języka {{lpg|Lua}}, czyli: {{Code|nil}}, co odpowiada w odpowiednikach uruchamianych w ramce szablonu wartości pustej {{Code|""}}. === {{Code|p["CzySąParametryNumerowaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy numerowane, tzn. od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNumerowaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, poieważ istnieją jakieś parametry numerowane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNumerowaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNumerowaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy numerowane tablicy, tzn. numerowane od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNumerowaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={"nazwa1", "nazwa2", "nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_numerowane_tablicy=parametry_modul["CzySąElementyNumerowaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo istnieją jakieś elementy numerowane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametryNienazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane, tzn., niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNienazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=nazwa1|5=nazwa2|8=nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane, a nienumerowane (nie zaczyna się od {{Code|1}}). Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNienazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNienazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nienazwane, tzn. nienazwane, niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNienazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[3]="nazwa1", [5]="nazwa2", [8]="nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane tablicy {{Code|tabela}}, a nienumerowane (nie zaczyna się od {{Code|1}}). === {{Code|p["CzySąParametryNazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|10=wartość2|15=wartość3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nazwane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nazwane, tzn. niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartośc3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ są jakieś elementy nazwane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametrySzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametrySzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametrySzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość4|2=nazwa4|6=nazwa6}} </syntaxhighlight> Szablon zwroci wynik {{Code|tak}}, ponieważ ma on jakieś parametry. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyTablicy"]()}} === Funkcja służy do wskazania, czy w parametrach tabeli {{Code|tabela}} są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartość3", [2]="nazwa4", [6]="nazwa5", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane_lub_nazwane=parametry_modul["CzySąElementyTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ta tabela {{Code|tabela}} ma jakieś elementy. === {{Code|p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"](frame)}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w parametrach szablonu rodzica, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"] = function (frame)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|niepuste}} - taki element nie może być pusty, * {{Code|frame:getParent().args}} - tabela ramki szablonu rodzica, wśród w której następuje to wyszukiwanie. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyCoNajwyżejJedenNumerowanyParametrSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać w wynikach poniżej. Przykład pierwszy: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Przykład drugi: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6|3=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane. Przykład trzeci: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6|4=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane, ale one nie zaczynają się od {{Code|1}}, dlatego wynik jest przede wszystkim taki. Przykład czwarty: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo nie ma parametrów numerowanych zaczynających się od liczby {{Code|1}}. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w podanej tabeli, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyElementTablicy"] = function (args,wliczac)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|args}} - tabela ramki szablonu rodzica, wśród w której następuje to wyszukiwanie, * {{Code|wliczac}} - taki element nie może być pusty. Wywołanie przykładowej tej funkcji jest, pierwsze: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6,}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Wywołanie przykładowej tej funkcji jest, drugie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6, [3]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, trzecie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, [4]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, ale, są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, czwarte: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, }; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, mimo, że jest jeden element nienazwany. == Funkcje kopiowania tabel == === {{Code|p["KopiujTabelęŁańcuchów"]()}} === Szablon przyjmuje tabelę: {{Code|args}}, którego elementem jest: {{Code|args.tabela}}, która jest tą właściwą tabelę, na której operujemy. Tabela {{Code|args}} posiada składowe do zastępowaniem poszczególnych elementów ściśle dla niego, a jeżeli nie ma dla niego składowych szczególnych, to ogólnie. Z tak uzyskanej tabeli wyodrębniamy pewne elementy szczególnie lub ogólnie, jak z zastępowaniem. A jeśli coś uzyskamy coś, to do niego dodawany jest przedrostek i przyrostek, a podstawie tego tworzymy nową tabelę {{Code|args2}}, którą zwracamy przez tę funkcję. <syntaxhighlight lang="lua"> p["KopiujTabelęŁańcuchów"]=function(args)...end; </syntaxhighlight> Składowymi nazwanymi tabeli: {{Code|args}}, są składowe, którym koniecznym elementem jest {{Code|args.tabela}}, a dalsze są opcjonalne, ale tylko co najmniej jeden z nich musi być podany, co na podstawie, z której tworzymy nową tabelkę, a więc: * {{Code|args.tabela}} - tabela, na której operujemy, na podstawie, z której tworzymy zwracaną tabelę {{Code|args2}}, * {{Code|args["wzór"][coś]}} lub {{Code|args["wzór wszystko"]}} - wzór wyszukiwania, czy element wskazywany przez niego, ma to, * {{Code|args.podstawienie[coś]}} lub {{Code|args["podstawienie wszystko"]}} - podstawienie, dokonane po znalezieniu elementu w elemencie według powyższego zaraz wzoru, i go zastąpienie, * {{Code|args["wzór 2"][coś]}} lub {{Code|args["wzór wszystko 2"]}} - wzór wyodrębnienia pewnej części, jeśli element to ma, a jeśli tego nie ma, to zwracane jest {{Code|nil}}, wtedy z tego elementu tabeli, dla której uzyskaliśmy tę wartość, nie jest przetwarzana jako element nowej tabeli {{Code|args2}}, * {{Code|args.przedrostek[coś]}} lub {{Code|args["przedrostek wszystko"]}} - jeśli element istnieje wyszukany powyższym wzorem, to to jest przedrostek przed tym elementem, * {{Code|args.przyrostek[coś]}} lub {{Code|args["przyrostek wszystko"]}} - jeśli element istnienie wyszukany powyższym wzorem, to to jest przyrostek po tym elemencie. Element {{Code|coś}} jest to jakiś klucz elementu tabeli {{Code|args.tabela}}. W powyższych alternatywach jest sprawdzany najpierw pierwszy element alternatywny, czy istnieje, a potem drugi. Za pomocą tego modyfikujemy tę tabelę lub usuwamy poszczególne jego elementy, tworząc tabelę {{Code|args2}}. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; local args = { tabela = tabela, ["wzór wszystko"] = "%d+$", ["podstawienie wszystko"] = "_numer", ["wzór wszystko"] = "_numer$", ["przedrostek wszystko"] = "coś przed ", ["przyrostek wzystko"] = " coś po", }; local args2 = parametry_modul["KopiujTabelęŁańcuchów"](args); mw.logObject(args2, "Uzyskana tabela:" ); </syntaxhighlight> Uzyskaną tabelą jest w wyniku operacji według powyższego kodu, wyświetlaną przez funkcję {{Code|mw.logObject}} jest: <syntaxhighlight lang="lua"> local args2={ [1] = "coś przed wartość_numer coś po", [2] = "coś przed wartość_numer coś po", ["nazwa1"] = "coś przed wartość_numer coś po", ["nazwa2"] = "coś przed wartość_numer coś po", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementów"]()}} === To jest nierekurencyjne kopiowanie tabeli {{Code|tabela}}, a jeżeli {{Code|wliczac_1{{=}}true}}, to klucze elementów nie mogą być puste lub wskazywać na wartość fałszywą, a jeśli {{Code|wliczac_2{{=}}true}}, to wartości tych elementów o tych kluczach nie mogą być puste lub wskazywać na wartość fałszywą. W takim przypadku wywoływana w takim bądź razem jest funkcja: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}: <syntaxhighlight lang="lua"> p["KopiujTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabela2 = parametry_modul["KopiujTabelęElementów"](tabela,true,true); </syntaxhighlight> Uzyskana tabela {{Code|tabela2}} jest w wyniku wywołania kodu, którą możemy podejrzeć przy pomocy funkcji: {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabela2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementówBezTablicyKluczy"]()}} === Funkcja kopiuje nierekurencyjnie elementy tabeli {{Code|tabelka}}, usuwając z niej elementy o kluczach wskazanych przez tabelę {{Code|tabelka2}}, którego elementy piszemy w postaci {{Code|{"klucz"] {{=}} "wartość"}}. Funkcją wyszukiwującą klucze w tabeli {{Code|tabelka2}} jest: {{Code|{{sr|#p.CzyJestTakiKluczTabeli()|p=Parametry}}}}. Z tabeli można usunąć klucze, ewentualnie przy pomocy {{Code|wliczac_1{{=}}true}}, i ewentualnie wartości {{Code|wliczac_2{{=}}true}}, o wartościach pustych lub fałszywych przy pomocy funkcji: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A więc: <syntaxhighlight lang="lua"> p["KopiujTabelęElementówBezTablicyKluczy"]=function(tabelka,tabelka2,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|tabelka2}} - tabela zbudowana przy pomocy ściśle określonych kluczy o dowolnych wartościach (wartości są nieistotne), za pomocą których usuwamy elementy tabeli {{Code|tabelka2}}, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykłady usuwania kluczy z tabeli o kluczach i wartościach, pustych lub fałszywych: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={ [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabelka2={[2]=true,["nazwa2"]=false,}; local tabelka3=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](tabelka,tabelka2,true,true); </syntaxhighlight> Tabelą uzyskaną z wyników: {{Code|tabelka3}}, jest, którą możemy podejrzeć przy pomocy funkcji {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabelka3={ [1] = "wartość1", ["nazwa1"] = "wartość3", }; </syntaxhighlight> === {{Code|p["KopiujRekurencyjnieTabelęElementów"]()}} === Funkcja dokładnie rekurencyjnie kopiuje tabelę {{Code|tabelka}}, pomijając ewentualnie elementy o kluczach, przy pomocy {{Code|wliczac_1{{=}}true}}, i o wartościach przy pomocy: {{Code|wliczac_2{{=}}true}}, przy użyciu funkcji. Funkcja też kopiuje dokładnie również metafunkcje, na razie to jest przygotowane tylko dla jednych z nich, tzn. ona jest zdefiniowana {{ld2|Szablonowe/Potrzebne}}, i nazwana jest ona jako: {{Code|{{sr|#p.MetaTabelkaSzablonowe(__metatablica)|p=Szablonowe/Potrzebne}}}}, w niej musi istnieć składowa tej metatablicy o kluczu {{Code|tablica}}, w której są przechowywane elementy o jakiś kluczach i ich wartościach, właściwa do niego tabela jest zawsze pusta, a ta tabela należąca do metatabelki powiązana z tą tabelą natomiast nie ona taka, ona jest wykorzystywana do liczenia elementów. Więc: <syntaxhighlight lang="lua"> p["KopiujRekurencyjnieTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykładem kopiowania rekurencyjnego tabeli {{Code|tabelka}}, usuwając z niej jednocześnie klucze i wartości, puste lub fałszywe, jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = "",["nazwa4"] = { ["nazwa5"}=true, ["nazwa6"] = "", }, }; local tabelka2=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tabelka,true,true); </syntaxhighlight> Wynikiem jest dokładnie przekopiowana tabela {{Code|tabelka}} bez pewnych elementów: <syntaxhighlight lang="lua"> local tabelka2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", ["nazwa4"] = {["nazwa5"] = true, }, }; </syntaxhighlight> Obiekt referencyjny {{Code|tabelka2}} wskazuje na inny adres niż {{Code|tabelka}}. == Funkcje istnienia parametrów == === {{Code|p["NazwanyLiczbą"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyLiczbą}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwany parametr, tzn. określony liczbą: <syntaxhighlight lang="lua"> p["NazwanyLiczbą"] = function(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyLiczbą|2}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=wartość|3=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo znalazł parametr nienazwany {{Code|2|, ale nie numerowany. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p["NazwanyCiągiem"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyCiągiem}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwany parametr, tzn. określony łańcuchem znaków: <syntaxhighlight lang="lua"> p["NazwanyCiągiem"] = function (frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyCiągiem|nazwa1}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość|nazwa2=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nazwane|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry, tzn. o kluczach {{Code|nazwa1}} i {{Code|nazwa2}} posiadający wartości, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nienazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nienazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwane parametry (oznaczone liczbami naturalnymi) o wartościach takich jak, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nienazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nienazwane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=wartość1|6=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry nienazwane o wartościach takich, tzn. {{Code|wartość1}} i {{Code|wartość2}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nienazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Numerowane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Numerowane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano takie numerowane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Numerowane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Numerowane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|wartość2|wartość3}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry numerowane (tzn. numerowane od jedynki bez przerw) o wartościach takich, tzn. {{Code|wartość2}} i {{Code|wartość3}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Numerowane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. == Funkcje manipulowania formatów łańcuchów znakowych == === {{Code|p["Odstępy"](frame)}} === ==== Odpowiednik szablonowy ==== Odpowiednik szablonowy {{s|Odstępy}} ma te same parametry, co jej odpowiednik ramkowy funkcyjny: {{Code|{{m|Parametry|Odstępy}}}}. Przykładami wywołania funkcji są: Poniższe przykłady są pokazane za pomocą szablonu {{s|Pre}}. ; Przykład pierwszy {{Pre|{{s|Odstępy| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz już nie. ---- ; Przykład drugi {{Pre|{{s|Odstępy|wewnątrz{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony spacją. ---- ; Przykład trzeci {{Pre|{{s|Odstępy|wewnątrz{{=}}tak|dolny-myślnik{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak|dolny-myślnik=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony na dolny myślnik. ==== Funkcja biblioteczna ==== Funkcja usuwa białe znaki i dolne myślniki na końcach podanego ciągu, ale też ewentualnie można przy pomocy tej funkcji zamieniać też te znaki wewnątrz ciągu, o ile nie jest już pusty po poprzedniej operacji, i zamienia ich na jedną spację lub dolny myślnik. <syntaxhighlight lang="lua"> p["Odstępy"] = function(frame)...end; </syntaxhighlight> Parametry funkcji: * {{Code|1}} lub {{Code|nazwa}} - określa podany ciąg, któremu domyślnie są usuwane białe znaki lub dolne myślniki na końcach łańcucha, * {{Code|2}} lub {{Code|wewnątrz}} - czy ma również robić te same operacje, co powyżej domyślną, tylko że wewnątrz ciągu, * {{Code|3}} lub {{Code|dolny-myślnik}} - czy ma zamieniać, spacje i dolne myślniki (jeżeli je wykrywa, patrz parametr poniżej), na dolne myślniki, * {{Code|4}} lub {{Code|spacje}} - czy na końcach i wewnątrz ciągu ma wykrywać, do zamieniania, tylko odstępy, a nie również dolne myślniki. Funkcja zwraca przekształcony ciąg powyższymi metodami. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local nazwa2=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ",}; local nazwa3=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",}; local nazwa4=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",["dolny-myślnik"]="tak",}; </syntaxhighlight> W pierwszym i drugiej wartości w naszym wypadku funkcja zwróci wartość: <syntaxhighlight lang="lua"> local nazwa2="Oto jest łańcuch."; local nazwa3="Oto jest łańcuch."; local nazwa4="Oto_jest_łańcuch."; </syntaxhighlight> == Funkcje dodawania lub usuwania elementu do tabeli zbioru == === {{Code|p.DodajElementDoZbioru()}} === Funkcja dodaje element do zbioru, czyli do tablicy numerowanej: {{Code|tabela}}, wartość: {{Code|wartość}}. Jej definicji jest: <syntaxhighlight lang="lua"> function p.DodajElementDoZbioru(tabela,wartosc)...end; </syntaxhighlight> Przykładem użycia funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={}; --- Tutaj zwraca true; local tak1=parametry_modul.DodajElementDoZbioru(tabela,"wartość1"); --- Tutaj zwraca true; local tak2=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); --- Tutaj zwraca false; local tak3=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); </syntaxhighlight> Elementami tej tabeli są: <syntaxhighlight lang="lua"> local tabela={"wartość1","wartość2",}; </syntaxhighlight> Funkcja zbiera tylko niepowtarzające się wartości, w takim wypadku zwraca wartość {{Code|true}}, w przeciwnym wypadku {{Code|false}}. == Funkcje istnienia elementów tabeli == === {{Code|p.CzyJestTakiElementNumerowanyTabeli()}} === Funkcja sprawdza, czy jest taki element numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNumerowanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, numerowanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi od jedynki bez przerw z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={"wartość1","wartość2","wartość3",5,8,"wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementNienazwanyTabeli()}} === Funkcja sprawdza, czy jest taki element nienazwany, niekoniecznie numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNienazwanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nienazwanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi niekoniecznie od jedynki mogący być z przerwami z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={[2]="wartość1",[5]="wartość2",[10]="wartość3",[80]=5,[90]=8,[100]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNienazwanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiKluczTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu o dowolnej wartości. <syntaxhighlight lang="lua"> function p.CzyJestTakiKluczTabeli(tabela,klucz)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nazwanych, dla której sprawdzamy, czy jakiś element jego o danym kluczy {{Code|klucz}}, o dowolnej wartości. Zaużmy, że naszą tabelą jest tabela elementów nazwanych z kluczami i przydzielonymi im wartościom. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiKluczTabeli(tabela,"nazwa5"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu {{Code|klucz}} i wartości {{Code|wartość}} dla elementów w danej tabeli. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeli(tabela,klucz,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} o parametrach niekoniecznie nazwanych, ale on równie dobrze może składać się z elementów nienazwanych, jak i numerowanych. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementTabeli(tabela,"nazwa5",8); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. == Łączenie wielu tabel == === {{Code|p["ŁączDwieTabele"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane jak i nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączDwieTabele"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączDwieTabele"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNumerowanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy ponumerowane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNumerowanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNumerowanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNienazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNienazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNienazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączNumerowaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele ponumerowane. <syntaxhighlight lang="lua"> p["ŁączNumerowaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNumerowaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączNienazwaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele określone liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączNienazwaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNienazwaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączTabele"]()}} === Funkcja łączy tabele ogólnie nazwane, określone w tablicy {{Code|args2}}, względem parametrów określonych w tablicy {{Code|args2}}. Definicja jej jest: <syntaxhighlight lang="lua"> p["ŁączTabele"] = function(args,args2)...end; </syntaxhighlight> Funkcja łączy jedynie tabele ponumerowane liczbami naturalnymi, czy to w sposób nienazwany, też za pomocą tych liczb, ale wtedy numeracja nie musi być od jedynki i ona może mieć przerwy. Parametry (elementy) tabeli {{Code|args2}} są: * {{Code|args2.CzyPairsTablic}} - jeśli prawdziwa, to określa nazwane elementy tabel w tabeli {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2["CzyPairsElementówTablic"]}} - jeśli prawdziwa, to określa nazwane elementy poszczególnych tabel w tablicy ogólnie nazwanej w {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2.CzyNazwaneElementyTabel}} - jeśli prawdziwe, łączy nazwane elementy tabel, mogą być określone liczbami naturalnymi, lub nie, w jedną tablicę, * {{Code|args2.CzyTylkoNazwaneElementyTabel}} - jeśli niepuste, łączy tylko nazwane elementy tabel, * {{Code|args2.NazwijElementyNumerowane}} - jeśli prawdziwe, to wśród elementów nienazwanych elementy numerowane traktuje je jako nazwane, w przeciwnym wypadku takie elementy dodaje do zbioru elementów numerowanych łączonych tablic. Przykładami wykorzystania tej funkcji są funkcje łączenia tabel zdefiniowane w funkcjach powyżej, tzn. zdefiniowane w: * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel ponumerowanych. Powyższe funkcje elementy nienazwane łączy w zbiory, ale nie jako elementy nazwane, tylko jako ponumerowane. {{Hr}} * {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}} - łączy tabele ponumerowane, * {{Code|{{sr|#p["ŁączNienazwaneTabele"]()|p=Parametry}}}} - łączy tabele określone liczbami naturalnymi. Powyższe funkcje łączą w sposób dokładny wiele tabel, niezależnie z jak nazwanymi elementami, te nazwane jest nie tylko określone liczbami naturalnymi (one nie muszą być ponumerowane), ale też łańcuchami. {{Hr}} Działanie tych funkcji w powyższej wyliczance można rozszyfrować na podstawie ich nazw podanych w nawiasach kwadratowych w cudzysłowach. == Funkcje dodawania lub usuwania elementów z tabeli o takich kluczach == === {{Code|p["UsuńElementyTabeli"]()}} === Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["UsuńElementyTabeli"]=function(tabelka_1,tabelka_2)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabelka_koncowa=parametry_modul["UsuńElementyTabeli"](tabelka_1,tabelka_2); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to ma taką referencję, co {{Code|tabelka_1}}, ma elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Tworzenie tabeli == === {{Code|p["TwórzTabelęBezPowtarzającychKluczyTabel"]()}} === Funkcja jest analogiem do funkcji {{Code|{{sr|#p["UsuńElementyTabeli"]()|p=Parametry}}}}. Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["TwórzTabelęBezPowtarzającychKluczyTabel"]=function(args)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabela_args={tabelka_1,tabelka_2,}; local tabelka_koncowa=parametry_modul["TwórzTabelęBezPowtarzającychKluczyTabel"](tabelka_args); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to nie ma takiej samej referencji, co {{Code|tabelka_1}}, tylko inną, ma za to elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Funkcje typu == === {{Code|p.TypeTable()}} === Funkcja sprawdza, czy typem zmiennej jest tabela w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeTable(zmienna) return (type(zmienna)=="table"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={"wartość1","wartosc2",["nazwa1"]="wartość3",} local czy_tak=parametry_modul.TypeTable(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeFunction()}} === Funkcja sprawdza, czy typem zmiennej jest funkcja w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeFunction(zmienna) return (type(zmienna)=="function"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local funkcja=function(frame)return true;end; local czy_tak=parametry_modul.TypeFunction(funkcja); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeString()}} === Funkcja sprawdza, czy typem zmiennej jest łańcuch znakowy w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeString(zmienna) return (type(zmienna)=="string"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local str="wartość"; local czy_tak=parametry_modul.TypeString(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeBoolean()}} === Funkcja sprawdza, czy typem zmiennej jest typ logiczny w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeBoolean(zmienna) return (type(zmienna)=="boolean"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_jest_tam=false; local czy_tak=parametry_modul.TypeBoolean(czy_jest_tam); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNumber()}} === Funkcja sprawdza, czy typem zmiennej jest liczba w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNumber(zmienna) return (type(zmienna)=="number"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local liczba=2; local czy_tak=parametry_modul.TypeNumber(liczba); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNil()}} === Funkcja sprawdza, czy typem zmiennej jest zmienna z przydzieloną wartością, której jest {{Code|nil}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNil(zmienna) return (type(zmienna)=="nil"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_nil=nil; local czy_tak=parametry_modul.TypeNil(czy_nil); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> == Funkcje prawdy i fałszu == W funkcjach {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} uruchomione w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} muszą posiadać dodatkowo parametr {{Parametr|wyspecjalizowana|tak}}, aby dało się w je wsadzić skutecznie parametry do samej tej ramki dziecka, a nie używać parametry szablonu rodzica. === {{Code|CzyTakSilnik(args,funkcja)}} === Funkcja pomocnicza służąca do liczenia wartości logicznej {{Code|tak}} lub {{Code|nil}} parametrów ramki, w wikikodzie, funkcji {{lpg|lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> local function CzyTakSilnik(args,funkcja)...end; </syntaxhighlight> Możliwymi wartościami funkcji parametru {{Code|funkcja}} jest {{Code|CzyTak}} lub {{Code|CzyTakCiąg}} (ta funkcja wykorzystuje funkcję {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} do swojego argumentu, który służy do sprawdzania, jaki spełnia warunek). Gdy istnieje parametr tablicy {{Code|args}} funkcji o parametrze nienazwanym {{Code|args[2]}}, to ona zbiera argumenty ramki nazwane jak nazwane, tzn. klucze i ich wartości przypisuje, a w przypadku parametrów nienazwanych (nie są zbierane elementy w tej tablicy o kluczach o wartości: {{Code|1}} i {{Code|2}}), ich klucze są pomniejszane o dwa, w ten sposób jest utworzona tabela {{Code|argsfun}}. Dla {{Code|args[2]}} funkcja uruchamia bibliotekę o tej właśnie nazwie, a w niej funkcję określoną argumentem {{Code|args[1]}}. Gdy nie ma składowej drugiej tablicy, tzn. {{Code|args[2]}}, to wtedy funkcja sprawdza, czy {{Code|args[1]}} to jest liczba w łańcuchu znakowym, lub bezpośrednio liczba, a jeżeli nie da się jej przetransformować na liczbę, to sprawdza, czy typem tej zmiennej jest {{Code|string}} (czy typem jest szereg), po działaniu funkcją: {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} , jeśli ma wtedy o wartość: {{Code|"true"}}, wtedy ta zmienna przyjmuje wartość {{Code|true}}, {{Code|"false"}}, wtedy {{Code|false}}, {{Code|"nil"}}, wtedy {{Code|nil}}. A jeżeli ta zmienna żadnej tej wartości nie przyjmuje z tych wartości, to wtedy jest transformowana na liczbę, jeżeli da się tą operację dokonać. Na samym końcu jest liczona wartość logiczna z przygotowanymi parametrami, według jednej z dwóch specjalnie przygotowanych funkcji w postaci wywołania ogólnego: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); return (parametry_modul[funkcja]{[1]=parametr,[2]=argsfun,})and "tak" or nil; </syntaxhighlight> Gdzie {{Code|funkcja}}, to {{Code|CzyTak}} lub {{Code|CzyTakCiąg}}, a {{Code|parametr}}, to funkcja w jakimś module lub inna wartość, a {{Code|argsfun}}, to tabela argumentów ramki, dziecka, w kodzie {{lpg|Lua}} w {{lpr|Scribunto}}, w wikikodzie w szablonie w rodzicu. Gdy ta funkcja zwróci wartość logiczną odpowiadającą {{Code|true}}, to wtedy zwraca {{Code|tak}}, w przeciwnym wypadku {{Code|nil}}. Ta funkcja jest wykorzystywana, gdy jest uruchamiana w ramce, gdy mamy parametry ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wyspecjalizowana=tak}} </syntaxhighlight> Podobnie jest z funkcją {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A jak jest tworzony parametr zmiennej z powyższych wywołań, to jest powiedziane powyżej. Równie dobrze możemy zefiniowć atrapę funkcji {{Code|frame.getParent}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"]{args={ [1]=" Wartość ", [2]="", ["nazwa1"]="wartość1", ["nazwa2"]="wartość2", [3]="wartość3", [4]="wartość4", ["wyspecjalizowana"]="tak", }, getParent=function()end, }; </syntaxhighlight> Czasami tak potrzeba robić, by ominąc zabezpieczenia pewnych funkcji, nawet tutaj. === {{Code|p["CzyTakCiąg"](...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p["CzyTakCiąg"]=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi pustemu, mimo że funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} zwróci wartość {{Code|tak}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|nil}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość podana zawiera znaki nierówne odstępowi, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. === {{Code|p.CzyTak(...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania nie wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}}, tak jak to robi {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p.CzyTak=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi {{Code|tak}}, mimo że funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} zwróci wartość równoważną ciągowi pustemu. <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak||wyspecjalizowana=tak}} </syntaxhighlight> Ta funkcja uruchomiona w ramce w wikikodzie zwraca wartość równą ciągowi pustemu, tak samo, jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}, niezależnie, czy tym ciągiem jest szereg składający się z samych znaków odstępów. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(""); </syntaxhighlight> Ta funkcja wtedy zwróci wartość równą {{Code|nil}} w kodzie {{lpg|Lua}} w {{lpg|Lua|Scribunto}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość, czy jest nierówna ciągowi pustemu, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. == Funkcje parametrów == === {{Code|p.PobierzFrameEwentualnieParent(frame)}} === Argument tej funkcji {{Code|frame}} koniecznie musi być tablicą, w przypadku przeciwnym wywoła to błąd języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzFrameEwentualnieParent(frame)...end; </syntaxhighlight> Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(frame).args; .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdy by funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu jest taka niedogodność, że jedynie jest taka nieprawidłowość, że w przypadku parametru tablicy ramki tablicy transportu należy podawać uzyskanej element {{Code|args}}, a w przypadku zwykłej tablicy już nie, tą niedokodność rozwiązuje funkcja, taka że w obu przypadkach działa, jest funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. === {{Code|p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)}} === Argument tej funkcji {{Code|frame}} koniecznie nie musi być tablicą, bo wtedy nie wywoła to błędu języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}, bo przedtem sprawdzana jest w tej funkcji, czy jest to tablica. W definicji tej funkcji zmienna uzyskana z funkcji: {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}, a jeśli jej składowa {{Code|args}} jest tablicą, to jest właśnie ona zwracana, a jeśli istnieje, ale nie jest tablicą, lub ona nie istnieje, to wtedy brana jest właśnie wartość tablicowa {{Code|frame}}, jeśli jest ona taka, a gdy nie, to wtedy z tej funkcji tutaj nie korzystamy. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)...end; </syntaxhighlight> Funkcja wykorzystuje wspomnianą powyżej funkcję do swojego działania, ona jest wtedy aktywowana, gdy zmienna {{Code|frame}} jest tablicą, i jest sprawdzane, czy ona posiada nazwany element o kluczu {{Code|args}}, i czy jest on tablicowy. Jeżeli wartością zmiennej {{Code|frame}} nie jest tablica, ale nie przybiera wartości {{Code|nil}}, to ona jest umieszczana w tablicy, jeżeli zmiennej {{Code|czy_nie_tablica_jako_tablica}} przydzielimy wartość {{Code|true}}, w przeciwnym wypadku zwracana jest ona w postaci niezmienionej, a jeżeli wartość tej zmiennej nie istnieje, to zwracana jest zwykła tablica pusta. Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdyby funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu tych przypadków nie ma żadnej niedogodności, jak to występowała w {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}. Jeśliby do funkcji tablicy transportu dać wartość równą nie tablicy, to wtedy równoważnie możemy napisać: <syntaxhighlight lang="lua"> local wartosc="wartość"; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> to wtedy definicję tej funkcji piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local wartosc=args[1]; end; </syntaxhighlight> lub równoważnie możemy zapisać: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local wartosc=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> A jeżeli nie wsadziliśmy żadnej wartości do funkcji ramki tablicy transportu lub tą wartością jest {{Code|nil}}, wtedy: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](); </syntaxhighlight> wtedy definicja tej funkcji wygląda: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); -- Zmienna: args, wskazuje na wartość, którą jest tablicą pustą, tzn. w tej tablicy nie ma wcale elementów; local args=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> Widzimy, że wtedy zmienna {{Code|args}} jest normalną pustą tablicą, i nie musimy wtedy wcale pisać poniżej, bo wtedy wychodzi w tym przypadku na to samo: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); </syntaxhighlight> Argument drugi w {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, który w naszym przypadku musi mieć wartość {{Code|true}}, a wtedy jest jedynie sens, gdy {{Code|frame}} nie jest tablicą, i gdy chcemy tą wartość umieścić w tablicy, a nie powtórzyć wartość, tzn. napisać: {{Code|{{(}}frame,{{)}}}}, w przeciwnym wypadku musilibyśmy napisać coś w rodzaju, zamiast tak spreparowanej tablicy: {{Code|frame}}, czyli: <syntaxhighlight lang="lua"> -- Pierwszy przypadek, gdy frame jest wartością nietablicową; local parametry_modul=require("Module:Parametry"); ... -- Zwracana wartość: args, to nic innego niż: {frame,}; local args=parametry_modul.PobierzArgsParametry(frame,true); ... -- Zwracana wartość: args, to nic innego niż: frame, a nie {frame,}, jak poprzednio; local args=parametry_modul.PobierzArgsParametry(frame); </syntaxhighlight> === {{Code|p.PobierzParametryRamki(frame)}} === Funkcja służy do ustawienia pewnych domyślnych dwóch pewnych funkcji służących do pobieranie danych z tabelki z pierwszej tej funkcji, jeżeli ona posiada klucz o wartości {{Code|args}}, to zwracana jest ta właśnie tablica jako argument pierwszej tej funkcji, jeżeli jest w ogóle tablicą, w przeciwnym wypadku zwracana jest ta oryginalna tablica też jako argument tej funkcji, w przeciwnym dalszym wypadku zwracana jest zwracana wartość ta jako argument tej drugiej funkcji, która zwraca prawdziwą wartość z argumentu tylko za pierwszym razem, z tej funkcji, za następnym i dalszym razem {{Code|nil}}. Z tak utworzonej ogólnie większej funkcji wykorzystywana jest w budowie funkcja, która jest zwracana przez funkcję w tym nagłówku, która względem jego budowy wywołuje raz pierwszą albo drugą poprzednią wspomnianą funkcję zależną od rodzaju tabeli {{Code|frame}}. Ta funkcja zwracana przez funkcję w nagłówku przyjmuje argument, która jest kluczem do tych wspomnianych tabel (dokładnie, która tabelka to zależy od formatu tej naszej rozważanej zmiennej), a jeżeli to nie tabelka, co jest zwracane, to już zostało powiedziane. Definicja skrótowa tej funkcji jest: <syntaxhighlight lang="lua"> function p.PobierzParametryRamki(frame)...end; </syntaxhighlight> Weźmy ramkę sformułowaną w wikikodzie jako dziecko w szablonie rodzicu: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy tablica ramki tablicy transportu posiada właśnie {{Code|frame}} jest tablicą, i na pewno posiada tablicę o nazwie {{Code|args}}, to wtedy tę funkcję wywołaną w ramce, która wywołuje funkcję w nagłówku, formułujemy: <syntaxhighlight lang="lua"> local p={}; local p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); ... end; </syntaxhighlight> Równie dobrze funkcję z ramki można wywołać w sposób, co wtedy ta funkcja też zostanie wywołana pozytywnie: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}}; </syntaxhighlight> W tej funkcji nie trzeba definiować funkcji fałśzywej {{Code|getParent}}, w postaci: {{Code|getParent{{=}}function()end}}. Widzimi, że ta tablica posiada nazwę zmiennej tablicowej o nazwie {{Code|args}}, ale ona nie jest tablicą ramki tablicy transportu, ale tą tablicę możemy bezposrednio wsadzić w tą główną tablicę w samym argumencie funkcji. Równie dobrze możemy wywołać tę funkcję zdefiniowaną naszą w jakimś module w sposób: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local wynik=p["Nazwa funkcji"]{tabela); </syntaxhighlight> też ta funkcja prawidłowo się wywoła. W tym przypadku, jak i w przypadkach powyżej, wyniki uzyskuje się w następującym wywołaniach: <syntaxhighlight lang="lua"> --- Zmienna: wartosc1, przyjmuje wartość: "wartość1"; local wartosc1=PobierzParametryRamki("nazwa1"); --- Zmienna: wartosc2, przyjmuje wartość: "wartość2"; local wartosc2=PobierzParametryRamki("nazwa2"); --- Zmienna: wartosc3, przyjmuje wartość: "wartość3"; local wartosc3=PobierzParametryRamki(1); </syntaxhighlight> W innym przypadku wywołań funkcji ramki jest wsadzenie do niej zwykłego nietablicowego elementu, może być też to wartość: {{Code|nil}}. A to wywołanie jest: <syntaxhighlight lang="lua"> local wartosc="wartość"; --Zmienna: wartosc, nie jest w tym przypadku tablicą; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> Wtedy w tej ramce w celu uzyskania jakikolwiek wartości jest przykład wywołania tej funkcji zwracanej przez funkcję w ramce z argumentem pustym. <syntaxhighlight lang="lua"> -- Zmienna: wartość1, przyjmuje wartość: "wartość"; Jeżeli zmienna: wartosc, przyjmuje wartość: nil, to wywołanie rzuci: nil, i za każdym następny razem; local wartosc1=PobierzParametryRamki(); -- Zmienna: wartość2, przyjmuje wartość: nil; local wartosc2=PobierzParametryRamki(); </syntaxhighlight> W wywołaniach powinno dbać się o właściwą kolejność wywołań, bo argumentem funkcji z tablicy transportu może być zwykła tablicowa wartość. Najpierw uzyskujemy wartości nietablicowe, a później tablicowe, na wypadek niewiadomej {{Code|frame}} jakiego typu ma być wartość. Też ta zmienna może istnieć pod kilkoma możliwymi kluczami, lub tą zmienną może być jedyny argument funkcji, która jest nietablicową wartością, wtedy ją się wywołuje jako dla przypadku, gdy parametr jest nietablicowy lub jest pod kluczem {{Code|tekst}}: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)("tekst"); </syntaxhighlight> Lub chcemy tą funkcję wywołać bezparametrowo, gdy chcemy, by {{Code|frame}} nie była tablicą: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)(); </syntaxhighlight> Wtedy ta zmienna w przedostatnim przykładzie jest pod wartością {{Code|tekst}}, gdy wartość {{Code|frame}} jest tablicą, lub może być jedyną wartością, którą jest {{Code|frame}} jako zmienna nietablicowa, wtedy ta zmienna nie jest pod {{Code|tekst}}, ta funkcja uzyskana z: {{Code|{{sr|#p.PobierzParametryRamki(frame)|p=Parametry}}}}, wtedy może być wywołana tylko raz z nienilową wartością zwracaną, następnym razem zwraca wartość {{Code|nil}}, wtedy to dotyczy przedostatniego i ostatniego przykładu. Jeżeli {{Code|frame}} jest nietablicowa, to wtedy wartość {{Code|tekst}} jest taka sama, co {{Code|frame}}. A jeżeli jest tablicą, to ta wartością jest {{Code|frame.args["tekst"]}}, lub gdy {{Code|args}} nie istnieje, lub istnieje, ale jest nietablicowa, to wtedy ta wartość jest {{Code|frame["tekst"]}}. A gdy zmienne istnieją pod wieloma kluczami, lub gdy funkcję wywołano ze zmienną nietablicową, wtedy ogólnie możemy dla przykładu powiedzieć: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); local wartosc1=PobierzParametryRamki("nazwa1") or PobierzParametryRamki(1); local wartosc2=PobierzParametryRamki("nazwa2") or PobierzParametryRamki(2); local wartosc3=PobierzParametryRamki("nazwa3") or PobierzParametryRamki(3); </syntaxhighlight> Wtedy ta zmienna jest pod kluczem, np.: {{Code|nazwa1}} lub {{Code|1}}, tablicy ramki {{Code|frame}} tablicy transportu, następne wywołania dla następnych kluczy też zrzucą pewne wartości, lub jest ona zwykłą nietablicową wartością mogącą być równą nawet {{Code|nil}}. Następne wywołania uzyskanej tak funkcji w przypadku, gdy {{Code|frame}} jest nietablicowy, rzucać będzie z samej definicji funkcji wartości {{Code|nil}}, czyli {{Code|wartosc2{{=}}wartosc3{{=}}nil}}, ale za to wartość {{Code|wartosc1}} nie musi być, ale może, wartością {{Code|nil}}, jest tą wartością, gdy {{Code|frame{{=}}nil}}, w przeciwnym wypadku za pierwszym razem tej wartości nietablicowej wartość nie {{Code|nil}}, a za drugim i dalszym zawsze wartość {{Code|nil}}. === {{Code|p.PobierzElementNumerowanyZFrameLubTablicy(frame)}} === Definicja skrótowa funkcji jest z parametrem charakteryzującym pewien zestaw zmiennych {{Code|frame}}, które nie jest tablicą ramki tablicy transportu, tylko innym parametrem, który jest tablicą parametrów podanych do funkcji, nawet gdy parametrem podanym do funkcji jest jedyna zmienna będąca tablicą ramki, ale z drugiej strony tak nie musi być, może być to rozbudowany zestaw zmiennych, np. nazwanych i nienazwanych, którego wszystkie sposoby podawania łączymy jednym sposobem podawania. Mimo że parametry funkcji są parametrami nienazwanymi, mogą być one ponumerowane, ale zmienna może przyjmować wartość tą samą na różne sposoby, raz w sposób nazwany, a za innym sposobem jako nienazwany. Ogólnie ostateczne parametry łączymy w dane parametry za pomocą jednego sposobu, tzn. za pomocą tej funkcji, i tak uzyskanej tablicy {{Code|args}}, także za pomocą spójnika {{Code|or}}, pisząc np. {{Code|nazwa1{{=}}args["nazwa1"] or args[1]}}, gdzie np. w tym przykładzie wartość klucza {{Code|nazwa1}} o pewnej wartości, która jest wartością z tablicy podaną jako tylko jeden parametr do funkcji w jakimś sposobie podawania argumentów, a {{Code|args[1]}}, jest to pierwszy parametr funkcji, jeżeli w funkcji zmienne podajemy w postaci wielu parametrów, znów jeszcze w innym sposobie realizacji argumentów w argumencie w tej samej funkcji. A ten wspomniany skrót wygląda: <syntaxhighlight lang="lua"> function p.PobierzElementNumerowanyZFrameLubTablicy(frame)...end; </syntaxhighlight> Weźmy najprostszy sposób realizacji tej funkcji, w realizacji: {{Code|1-1, 2-2, 3-3}}, czyli ten opis jest zaraz poniżej. Weźmy funkcję, którą można wywoływać z wieloma parametrami, jak i w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, którą przykładowo piszemy jego wywołanie wewnątrz innej funkcji na pięć sposobów, czyli teraz pierwszy sposób z tylko z parametrem, więc tablicą ramki tablicy transportu wywodzącą się z ramki uruchomioną w wikikodzie w jakimś szablonie rodzicu: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](frame); </syntaxhighlight> a teraz drugi sposób, pisząc, bezpośrednio inaczej formułując wywołanie tej funkcji, używając zmiennych tablicowych tablicy ramki, ale to nie jest tak naprawdę tablica ramka tablicy transportu, tylko parametr podany bezpośrednio do funkcji, tak jak się to robi w języku {{lpg|Lua}}, nie jak w przykładzie powyżej, więc: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={"wartość1","wartość2","wartość3",},}; </syntaxhighlight> Lub równoważnie, pisząc, nie używając zmiennej {{Code|args}}: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{"wartość1","wartość2","wartość3",}; </syntaxhighlight> Albo te parametry wsadzając do funkcji: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]("wartość1","wartość2","wartość3"); </syntaxhighlight> Można też wywołać to wszystko w ramce, {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikdzie, wtedy wsadzając parametry do ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|wartość1|wartość2|wartość3}} </syntaxhighlight> A jak połączyć wszystkie te pięć sposobów, posługiwać się tymi sposobami wewnątrz funkcji {{Code|Nazwa funkcji}} w sposób jednolity, jedynie wtedy należy skorzystać z funkcji z definiowaną w jakimś module w sposób: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); ... end; </syntaxhighlight> Wtedy za pomocą zmiennych {{Code|args}} dostaliśmy się do parametrów, zdefiniowaną w tablicy {{Code|tablica_prametrow_funkcji}}, która jest nic innym jak zestawem parametrów w funkcji: {{Code|Nazwa funkcji}}. W pierwszym i drugim sposobem zmienna ta {{Code|args}} jest zmienną z podtablicy innego {{Code|args}} przekazanych jako parametr tablicy do funkcji, w trzecim sposobie tą zmienną jest cała tablica, a czwartym jest zestaw parametrów. A czym się różnią się te sposoby, a więc te sposoby można powiązać jedną tylko funkcją powiedzianą w nagłówku według przykładu podaną zaraz powyżej, wtedy możemy dostawać się do tych samych zmiennych o takich samych nazwach i wartościach, ale w różnych reprezentacjach na różne sposoby, wtedy można powiedzieć, że: <syntaxhighlight lang="lua"> args[1]="wartość1"; args[2]="wartość2"; args[3]="wartość3"; </syntaxhighlight> Czyli w wyniku działania funkcji w nagłówku, otrzymamy tablicę {{Code|args}}, której wynikiem jest zestaw zmiennych ponumerowanych, ogólnie nienazwanych, któremu wartością odpowiadają te podane w ramce ostatniej powyżej. Na podstawie tego wiemy, jak działa funkcja ta z nagłówka. Pisząc w inny sposób, można też wskazywać: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); local wartosc1=args["nazwa1"] or args[1]; local wartosc2=args["nazwa2"] or args[2]; local wartosc3=args["nazwa3"] or args[3]; end; </syntaxhighlight> Zmienne w przykładzie o kluczach {{Code|nazwa1}}, {{Code|nazwa2}} i {{Code|nazwa3}}, posiadające pewne swoje wartości, to są zmienne w tablicy {{Code|args}}, podane też jako zmienna, pewną tablicę jako argument (parametr) funkcji, jeżeli argumenty podano w postaci jednego parametru funkcji w postaci pewnej tablicy z np. elementami nazwanymi, lub jako wiele argumentów w ramce, w wikikodzie, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w pewnym szablonie, a rozpatrując dalej elementy: {{Code|1}}, {{Code|2}} i {{Code|3}}, to jest numer parametru, jeżeli argumenty do funkcji podano w postaci wielu jego parametrów. === {{Code|p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)}} === Ta funkcja zwraca znów inną funkcję, która ma jedyny parametr, mówiący jakiego parametru poszukujemy, co jest wyjaśnione w definicji funkcji z nagłówka, że ona zwraca tą właśnie funkcje, czyli: <syntaxhighlight lang="lua"> function p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame) ... return function(nazwa) return __pobierz_parametr_table_args(nazwa); end; end; </syntaxhighlight> Funkcja zwraca jednocześnie, ta zwrócona z funkcji z nagłówka, dwa parametry, prawdziwą wartość, i numer metody w postaci: {{Code|return wartosc, numer _metody}}. Ta funkcja zwracana ma w swojej definicji inną jeszcze funkcję z tym samym parametrem, co jego rodzic, i to jest za każdym razem inna funkcja w zależności z jakim typem danych się posługujemy {{Code|frame}} i jakie podaliśmy parametry, tzn. pod warunkiem, gdy zmienna {{Code|frame}} jest tablicą, czyli te zmienne druga: {{Code|czy_frame_lub_parent}} (jeżeli funkcja jest uruchomiona w ramce w szablonie, jeżeli wartość {{Code|true}}, to ona wybiera raz parametr z: {{Code|frame.args[nazwa or 1]}}, a za innym razem z {{Code|pf.args[nazwa or 1]}}, gdzie {{Code|pf{{=}}frame:getParent()}}, tutaj jest zwracana wartość: {{Code|return wartosc,2}}), czy trzecia: {{Code|czy_frame}} (która mówi, jeżeli funkcję uruchomiono w ramce, ale przy wartości fałszywej tego pierwszego podanego parametru, mówi, że przy wartości {{Code|true}} tego parametru, wybierana jest zawsze wartość {{Code|frame.args[nazwa or 1}}}, w przeciwnym wypadku uruchamiana jest funkcja {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, tutaj zwracana jest wartość {{Code|return wartosc,1}}). Jeżeli wartością {{Code|frame}} jest wartość nietablicowa, ale niebędącą wartością {{Code|nil}}, wtedy ustawiana jest funkcja, która tylko za pierwszym razem zwraca nienilową wartość {{Code|return wartosc,0}}, a później zwraca wartość {{Code|return nil,0}}. Gdy wartością {{Code|frame}} jest {{Code|nil}}, to funkcja zawsze wraca tą wartość {{Code|return nil,0}}. Powyższy sposób działa również dobrze, gdy zdefiniujemy w parametrach funkcji fałszywą funkcję {{Code|frame.getParent}}. Gdy funkcja nie jest uruchamiana w ramce lub funkcja {{Code|frame.getParent}} nie jest zdefiniowana, to wtedy funkcja wchodzi zawsze w ten krok pętli, jakby {{Code|czy_frame_lub_parent}} było {{Code|false}} według tego powyżej, to wtedy brana jest zmienna {{Code|czy_frame}}, i jaką wartość ona przyjmuje. Funkcję pisze się według sposobu, którą się wywołuje według: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc1=PobierzParametr("nazwa1") or PobierzParametr(1); local wartosc2=PobierzParametr("nazwa2") or PobierzParametr(2); local wartosc3=PobierzParametr("nazwa3") or PobierzParametr(3); </syntaxhighlight> Na wypadek wartości nietabelowej, tą wartość zapisuje się jako pierwszą w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, a dla wartości tabelowych, jaka jest kolejność to jest obojętne, byle by to było sensowne. Tą funkcję podobnie się wywołuje jak funkcję: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. Wartością {{Code|frame}} nie musibyć tablica ramki tablicy transportu, równie dobrze może być to dowolna tablica lub wartość nietablicowa. Weźmy ramkę, w której uruchamiamy funkcję ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> Ona musi być wywołana z parametrem {{Parametr|wyspecjalizowana|tak}}, jako podpowiedź, że liczą sie parametry ramki dziecka, a nie jego rodzica, czyli szablonu. Wtedy funkcję {{Code|Nazwa funkcji}} definiujemy: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,true); ... end; </syntaxhighlight> Wtedy parametr {{Parametr|wyspecjalizowana|tak}} jest ignorowany, a przy wartości {{Code|false}} drugiego parametru funkcji, czyli wywołania: {{Code|local PobierzParametr{{=}}parametry_modul.PobierzParametr(frame,false);}}, już nie, ale nie zawsze. W takim przypadku raz jest brana wartość, jeżeli istnieje, z {{Code|frame.args}}, a jak nie to z: {{Code|pf.args}}. Weźmy inny przypadek: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,true); ... end; </syntaxhighlight> Przy tym też parametr: {{Parametr|wyspecjalizowana|tak}}, jest ignorowany, wtedy jest zawsze wybierana do rozważań tablica: {{Code|frame.args}}. Znów w innym przypadku, gdzie parametr: {{Parametr|wyspecjalizowana|tak}}, jest zawsze rozważany w naszym wypadku: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,false); ... end; </syntaxhighlight> To to wywołanie, wtedy dokładnie działa jak funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, a zwrócona funkcja: {{Code|PobierzParametr}} pobiera elementy z tak uzyskanej tablicy {{Code|args}}. W przypadku, gdy {{Code|frame}} nie jest tablicą, wtedy parametry: {{Code|czy_frame_lub_parent}} i {{Code|czy_frame}}, są w takim przypadku zawsze ignorowane, ale muszą być ustawione na wypadek, gdy by do funkcji {{Code|Nazwa funkcji}} wsadzono tablicę, np.z ramki tablicę ramki tablicy transportu. Najprostszym często ogólnym przykładem, który prawie zawsze jest stosowany: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); ... end; </syntaxhighlight> Wtedy parametr: {{Parametr|wyspecjalizowana|tak}}, jest prawie zawsze nieignorowany, ale nie zawsze. == Funkcje wartości logicznej == Funkcje te wykorzystują funkcję: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, jeżeli mamy ciąg składający się z samych znaków odstępu, to funkcja zwraca wartość odpowiadający wartości: {{Code|false}}, a dla innych wartości to działa jak: {{Code|true}}, dla instrukcji warunkowej: {{Code|{{s|#if:coś|wtedy|przeciwnie}}}}. === {{Code|p.And(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|and}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli wszystkie z tych wartości są równe wartości {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.And(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1|wartość2|wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Or(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|or}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się, przynajmniej, któreś z nich, z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli z któreś z tych wartości jest {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Or(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|||}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Not(frame)}} === Funkcja działa jak operator logiczny operatorowy: {{Code|not}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartość składającą się z nie znaków odstępu i niebędący ciągiem pustym, na wartość składający się z ciągu pustego, i odwrotnie, czyli wartość pustą na wartość mający w sobie inne znaki niż odstępu. Funkcja zamienia wartość pierwszego parametru na wartość logiczną: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i zamienia ją na przeciwność, wartości {{Code|true}} odpowiada {{Code|tak}}, a {{Code|false}} odpowiada wartości pustej. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.Not(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|tak}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|nie}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|tak}}. == Funkcje porównań == === {{Code|p.Mniejszy(frame)}} === Funkcja zastępuje parser logiczny: {{Code|{{s|#expr:coś|wtedy|przeciwnie}}}}, dla porównania dwóch wartości logicznych, działa on szybciej niż ten parser, bo on musi uwzględniać skomplikowaność wyrażeń matematycznych do policzenia, a nasza funkcja w języku: {{lpg|lua}} w {{lpr|Lua|Scribunto}}, już nie. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Mniejszy(frame)...end; </syntaxhighlight> Funkcja sprawdza, czy spełniona jest wartość mniejszości pierwszego parametru liczbowego: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5|3}}|tak|nie}} </syntaxhighlight> Funkcja wtedy zrzuci wartość {{Code|nie}}, bo {{Code|5}} jest większe niż {{Code|3}}. Można też sprawdzić, czy liczba jest ujemna, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|-5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|tak}}. Można też sprawdzić, czy liczba jest dodatnia, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|nie}}. == Ile jest podanych elementów w szablonie według parametrów ramki == === {{Code|p.IlePodano(frame)}} === Funkcja sprawdza, ile jest podanych parametrów w parametrach rodzica szablonu z parametrów nazwanych lub nienazwanych, ale traktowanych jak nazwane, podanych w dziecku. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.IlePodano(frame)...end; </syntaxhighlight> Wywołanie szablonu, w której jest wywołana funkcja: {{Code|{{m|Parametry|IlePodano}}}}, jako z parametrami, i nie tylko, podanymi w ramce tej funkcji w tym szablonie: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy wywołanie w nim naszej funkcji bibliotecznej w postaci ramki wygląda, jako: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|IlePodano|nazwa1|nazwa3|2|nazwa4|5}} </syntaxhighlight> Funkcja zwróci wartość {{Code|3}}, a nie {{Code|5}}, bo trzy tylko parametry znaleziono w ramce wywołania szablonu, a parametr: {{Code|nazwa4}} i {{Code|5}}, tam wcale nie występują. == Metafunkcje i metatabele == Rozdział przedstawia metatabele i w niej zdefiniowane metafunkcje. === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter}} === Jest to zdefiniowana metatabelka, którego definicja i przyporządkowanie innej normalnej tablicy, wygląda: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter=parametry_modul.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter; local tablica_normalna={["nazwa1"]="wartosc1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",}; setmetatable(tablica_normalna,metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter); </syntaxhighlight> === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter.__index(t,klucz)}} === Jeżeli przyporządkujemy wartości {{Code|tablica_normalna}} metatabelkę z metafunkcjami, w tym przypadku metafunkcji {{Code|.__index(t,klucz)}}, wtedy możemy pisać wywołanie: <syntaxhighlight lang="lua"> local wartosc1=tablica_normalna["NAZWA1"]; </syntaxhighlight> Uzyskaną wartością jest: {{Code|wartość1}}, bo wartość: {{Code|NAZWA1}} jest zamieniana na małe litery w tym wywołaniu, ale powyżej podano wartość {{Code|nazwa1}} w tablicy {{Code|tablica_normalna}}, wtedy obie wartości są sobie równe, a więc uzyskamy taki wynik. == Iteratory == Poniższe operatory możemy wykorzystać w funkcjach: analogicznego do {{Code|ipairs}}, dla iteratora: {{Code|{{sr|#p.IteratorPoNumerowanychElementachTablicy(t)|p=Parametry}}}}, wynikłej z jego funkcji z wartości zwracanej, i analogicznego do {{Code|next}} (iteratora po kluczach) w {{Code|pairs}}, dla iteratora: {{Code|{{sr|#p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)|p=Parametry}}}}, wynikłe z jego funkcji z wartości zwracanej. === {{Code|p.IteratorPoNumerowanychElementachTablicy(t)}} === Iterator służy do iterowania po kolei liczb w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora. Można ją zdefiniować do obsługi innego iterowania po parametrach numerowanych, analogicznie do {{Code|ipairs}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorPoNumerowanychElementachTablicy(t) ... return function() ... end; end; </syntaxhighlight> Przykład działania iteratora jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={1,2,3,4,5,6,7,8,9,10,}; local iter=parametry_modul.IteratorPoNumerowanychElementachTablicy(tablica); for name, value in iter do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> === {{Code|p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)}} === Iterator służy do iterowania po kolei po zsortowanych kluczach po kolei alfabetycznie, którym są przyporządkowane wartości o pewnych tych kluczach w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora, metatabelki i metafunkcji w niej zdefiniowanej, gdzie: {{Code|funkcja}}, jest funkcją sortującą łańcuchy znakowe. Można ją zdefiniować do obsługi innego iterowania po parametrach nazwanych za pomocą: {{Code|pairs}}, definiując funkcję: {{Code|__next}}, analoga do {{Code|next}}, jako iteratora po kluczach posortowanych, która jest wartością zwracaną przez funkcję w nagłówku. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja) ... return function(tablica,klucz) ... end; end; </syntaxhighlight> Zdefiniujmy metatablicę z metafunkcją: {{Code|__pairs}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["D"]="wartość1",["A"]="wartość2",["F"]="wartość3",["C"]="wartość4",}; local __metatabelka={}; __metatabelka.__pairs=function(t) local funkcja_sortujaca=nil; local __next=parametry_modul.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(t,funkcja_sortujaca); return __next,t,nil; end; setmetatable(tabela,__metatabelka); for name,value in pairs(tabela) do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> == Funkcje wartości minimalnej i maksymalnej == === {{Code|p.Max(frame)}} === Funkcja liczy maksimum dwóch podanych wartości, podaną w jednostkach bezwymiarowych. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Max|5|3}}}} → {{Tt|{{#invoke:Parametry|Max|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Max}} lub {{s|Maksimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Max|5|3}}}} → {{Tt|{{Max|5|3}}}} Ta wersja szablonowa wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednostkach bezwzględnych z mianem na końcu na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Max|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Max}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy maksimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich maksimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Max(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Max|5|3}} </syntaxhighlight> Wynikiem tego jest maksimum z tych liczb równą: {{Code|5}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia maksimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local maksimum=parametry_modul.Max(5,3); </syntaxhighlight> Wartością z dwóch liczb jest wartość maksymalna: {{Code|5}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. === {{Code|p.Min(frame)}} === Funkcja liczy minimum dwóch podanych liczb, podaną w jednostkach bezwymiarowych. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Min|5|3}}}} → {{Tt|{{#invoke:Parametry|Min|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Min}} lub {{s|Minimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Min|5|3}}}} → {{Tt|{{Min|5|3}}}} Ta wersja szablonowa wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednostkach bezwzględnych z mianem na końcu na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Min|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Min}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy minimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich minimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Min(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Min|5|3}} </syntaxhighlight> Wynikiem tego jest minimum równą: {{Code|3}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia minimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local minimum=parametry_modul.Min(5,3); </syntaxhighlight> Wartością minimalną z dwóch liczb jest: {{Code|3}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9qv7p1zkqoeopet5vkbmjof6r5x6xx4 538655 538654 2026-03-31T13:25:52Z Persino 2851 538655 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Parametry}}|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 parametry_modul=require("Module:Parametry"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Moduł: {{ld2|Parametry}}, służy do operowania na wszelkiego rodzaju parametrach, modyfikowaniu ich, a nawet podawania z funkcji z tablicy ramki tablicy transportu tego modułu, i innych funkcji z innych modułów, które wykorzystują funkcje parametru tego modułu. Będziemy mówili, że zbiór jest ponumerowany, gdy ma elementy nienazwane od jeden zwyż, bez przerw, do pewnego końca, wtedy jest to sekwencja w języku {{lpg|Lua}}, a jeżeli ona nie jest ponumerowana, to ma tylko elementy nienazwane, czyli wtedy nie jest sekwencją. Zbiór z elementami nienazwanymi (nazwane liczbami naturalnymi) może zawierać czasami elementy nazwane, ktorego nazwy nie są już takie, zwykle je się oznacza łańcuchami znakowymi, a w języku {{lpg|Lua}} to są po prostu elementy typu: {{Code|string}}, a liczby naturalne typu: {{Code|number}}. == Funkcje liczb elementów w tabeli == === {{Code|p["LiczbaElementówNumerowanychTablicy"]()}} === Funkcja liczy liczbę numerowanych od {{Code|1}}, one nie mogą mieć miedzy sobą przerw zaczynające się właśnie od tej liczby, czyli: {{Code|1,2,3,4,...}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, jeżeli {{Code|true}}, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1","nazwa2","nazwa3","nazwa4","nazwa5","nazwa6","nazwa7","nazwa8","nazwa9",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNumerowanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|9}}, ponieważ ma on mnóstwo parametrów nienazwanych, które jednocześnie są numerowane, czyli są one od {{Code|1}} i ciągną się bez przerw, aż do pewnej liczby. Powyższe wywołanie liczy liczbę parametrów numerowanych niepustych. === {{Code|p["LiczbaElementówNumerowanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNumerowanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaElementówNumerowanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ta zmienna niepusta, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusta. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaElementówNumerowanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwaa2|nazwa3|nazwa4|nazwa5|nazwa6|nazwa7|nazwa8|nazwa9}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nnumerowwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany od {{Code|1}} bez przerw. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. Jak można zauważyć, że ma on parametry numerowanych (zaczynające się od jedynki), które można znaleźć w parametrach szablonu, jeżeli tam w ogóle istnieją. === {{Code|p["LiczbaElementówNienazwanychTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą, niekoniecznie, mieć przerwy, np.:{{Code|3,10,15,..}}, liczbę elementów tablicy. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychTablicy"]=function(tabela, wliczac,mnoga)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|mnoga}} - czy liczba tych numerowanych elementów jest mnoga. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="nazwa1",[10]="nazwa2",[15]="nazwa3",[18]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_tablicy=parametry_modul["LiczbaElementówNienazwanychTablicy"](tabela,true,false); </syntaxhighlight> Wynik tej funkcji jest {{Code|4}}, bo taka jest liczba parametrów nienazwanych, ale nie numerowanych. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych. === {{Code|p["LiczbaParametrówNienazwanychSzablonu"](frame)}} === Funkcja wywoływana w ramce w wikikodzie, wykorzystująca funkcję z definicji: {{Code|{{sr|#p["LiczbaElementówNienazwanychTablicy"]()|p=Parametry}}}}, i robiąca to samo, co ona, tylko wykorzystywana na innym poziomie. <syntaxhighlight lang="lua"> p["LiczbaParametrówNienazwanychSzablonu"]=function(frame)...end; </syntaxhighlight> Parametrami funkcji na poziomie ramki, odpowiedniki parametrów: {{Code|wliczac}} i {{Code|mnoga}}, są kolejno: * {{Code|niepuste}} - czy szukamy niepuste elementy numerowane parametrów szablonu, w którym ta ramka została wywołana, w postaci tej funkcji, jeżeli ten argument niepusty, * {{Code|mnoga}} - czy liczba takich wyszukań jest mnoga, jeżeli niepusty. Odpowiednikiem parametru {{Code|tabela}} jest: * {{Code|frame:getParent().args}} - czyli parametry szablonu rodzica, policzona za pomocą tablicy ramki, jej funkcji, tablicy transportu. Funkcje wywołuje się w ramce w szablonie, jako dziecko, w postaci, np., gdy rozważamy parametry niepuste szablonu, i czy one występuje w postaci mnogiej: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|LiczbaParametrówNienazwanychSzablonu|niepuste=tak|mnoga=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=nazwa1|10=nazwa2|15=nazwa3|18=nazwa4}} </syntaxhighlight> Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych w liczbie mnogiej, tzn. gdy ten parametr jest podany, czy jest w liczbie większej niż {{Code|1}}. Powyższa funkcja zrzuca wynik wyliczony, ze względu na mnogość podaną w dziecku tego szablonu, liczbę {{Code|2}}. === {{Code|p["LiczbaElementówTablicy"]()}} === Funkcja liczy liczbę nienazwanych (numerowanych) i nazwanych elementów tablicy, a jeżeli parametr: {{Code|wliczac}}, jest podany, to liczy nie o zawartości niepustej. <syntaxhighlight lang="lua"> p["LiczbaElementówTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela do rozważań na problemy tej funkcji, * {{Code|wliczac}} - czy ma liczyć liczbę elementów niepustych, jeżeli {{Code|true}}. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={ 10, nazwa = 5, parametr = "tak", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_tablicy=parametry_modul["LiczbaElementówTablicy"](tabela,true); </syntaxhighlight> Policzona liczba elementów {{Code|liczba_elementow_tablicy}} jest {{Code|3}}. Powyższa funkcja liczy liczbę wszystkich parametrów niepustych w podanej tablicy. === {{Code|p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]()}} === Funkcja liczy liczbę nienazwanych od {{Code|1}}, ale mogą zaczynać się od pewnej liczby, mogą między sobą mieć przerwy, np.: {{Code|3,10,15,..}}, liczbę elementów tablicy odpowiednio skonstruowanych, charakterystycznych dla tej funkcji. Można podać, czy oczekujemy wartości tylko niepustych. Można wskazać, czy liczba elementów jest mnoga (większa od {{Code|1}}). Należy też podać niepusty przedrostek, niebędący liczbą zakodowaną w łańcuchu. Należy wskazać funkcji, czy oczekujemy formy numerkowe w postaci czystych liczb, czy też również w postaci łańcuchów, które po przekształceniu na liczbę funkcją {{Code|tonumber}} stają się normalnymi liczbami {{lpg|Lua}}. <syntaxhighlight lang="lua"> p["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"]=function(tabela,przedrostek,wliczac,czy_formy_numerkowe)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabela}} - tabela, na którym operujemy, * {{Code|przedrostek}} - niepusty, niebędący liczbą łańcuchową, przedrostek, który ma być przed liczbą, * {{Code|wliczac}} - czy szukamy niepuste elementy numerowane tabeli, * {{Code|czy_formy_numerkowe}} - czy wyszukiwane liczby przy pomocy funkcji {{Code|pairs}} są czystymi liczbami {{lpg|Lua}}. Funkcja liczy liczbę parametrów nienazwanych i nazwanych, ale z podanym przedrostkiem, lub nie, skonstruowanych z tych pierwszych. Przykładem wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[2]="wartość1", [10]="wartosć2", [15]="wartość3", ["18"]="wartość4", ["nazwa2"] = "wartosc5", ["nazwa10"] = "wartość6", ["nazwa18"] = "wartość7", }; local parametry_modul=require("Module:Parametry"); local liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy=parametry_modul["LiczbaElementówNienazwanychZPrzedrostkiemLubNieTablicy"](tabela,"nazwa",true,false); </syntaxhighlight> Funkcja w postaci wartości {{Code|liczba_elementow_nienazwanych_z_przedrostkiem_lub_nie_w_tablicy}} zwróci liczbę {{Code|7}}. Powyższe wywołanie liczy liczbę parametrów nienazwanych niepustych, z przedrostkiem lub nie, ale nie czysto numerkowych, ale również numerkowych (szeregi). == Funkcje minimalnej i maksymalnej wartości w tabeli == === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MaksymalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|10=nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik {{Code|20}}, ponieważ ta nazwa (klucz) parametru jest największa. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MaksymalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy maksymalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local maksymalna_wartosc_parametru_nienazwanego=parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|maksymalna_wartosc_parametru_nienazwanego}}: {{Code|20}}. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoSzablonu(frame)}} === Funkcja wywołana w ramce szablonu, który może nawet liczyć, i nie tylko, parametry niepuste, jeżeli to w nim wskazano w parametrze dziecka ramki. <syntaxhighlight lang="lua"> p.MaksymalnaLiczbaParametruNienazwanegoSzablonu=function(frame)...end; </syntaxhighlight> Funkcja ma parametry, które przyjmuje jako parametry dziecka ramki, też zbiera zmienne rodzica: * {{Code|niepuste}} - niepuste, wtedy w liczy tylko elementy szablonu niepuste, tylko je wykorzystuje do rozważań, * {{Code|frame:getParent().args}} - parametry szablonu rodzica dziecka ramki, w której on został wywołany. Przykład wywołania ramki dziecka w szablonie rodzica jest: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|MinimalnaLiczbaParametruNienazwanegoSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|4=nazwa1|5=nazwa2|150nazwa3|20=nazwa4}} </syntaxhighlight> Szablon zrzuci liczbę {{Code|4}}, ponieważ ta nazwa parametru najmniejsza. Funkcja wykorzystuje do swojego działania: {{Code|{{sr|#p.MinimalnaLiczbaParametruNienazwanegoTablicy()}}}}, który robi to samo, co podana funkcja, tylko jest inne obrazowanie zmiennych. === {{Code|p.MinimalnaLiczbaParametruNienazwanegoTablicy()}} === Funkcja liczy minimalny numer parametru nienazwanego, określony liczbą, mający w sobie, niekoniecznie, przerwy, nie zawsze zaczynający się od jedynki. <syntaxhighlight lang="lua"> p.MinimalnaLiczbaParametruNienazwanegoTablicy=function(tabela, wliczac)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|wliczac}} - czy ma uwzględniać w swoich rozważaniach, podczas liczenia podanej tabeli, jego elementy niepuste. Przykładem wywołania jest dla parametrów niepustych tablicy: <syntaxhighlight lang="lua"> local tabela={[4]="nazwa1",[5]="nazwa2",[10]="nazwa3",[20]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc_parametru_nienazwanego=parametry_modul.MinimalnaLiczbaParametruNienazwanegoTablicy(tabela,true); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrze: {{Code|minimalna_wartosc_parametru_nienazwanego}}: {{Code|4}}. === {{Code|p.MinimalnyIMaksymalnyNumerParametru()}} === Funkcja liczy minimalny i maksymalny numer parametru nazwanego numerowany ze spację liczbami naturalnymi, może być od {{Code|0}}, określony liczbą, mający w sobie, niekoniecznie, przerwy, niekoniecznie zaczynający się jedynki, o pewnej podstawie. <syntaxhighlight lang="lua"> function p.MinimalnyIMaksymalnyNumerParametru(tabela,nazwa_parametru_okreslona)...end; </syntaxhighlight> Funkcja ma zmienne, które przyjmuje w wywołaniu funkcyjnym: * {{Code|tabela}} - rozważana tabela, podana jako pierwszy argument funkcji, * {{Code|nazwa_parametru_okreslona}} - podstawa parametrów numerowanych, np.: dla parametrów: {{Code|nazwa 1}}. Przykładem wywołania jest dla parametrów o nazwach niepustych w tablicy: <syntaxhighlight lang="lua"> local tabela={["nazwa 4"]="tak",["nazwa 5"]="tak",["nazwa 10"]="tak",["nazwa 20"]="tak",}; local parametry_modul=require("Module:Parametry"); local minimalna_wartosc,maksymalna_wartosc=parametry_modul.MinimalnyIMaksymalnyNumerParametru(tabela,"nazwa"); </syntaxhighlight> Funkcja zwróci wynik o wartości, w parametrach: {{Code|minimalna_wartosc}} i {{Code|maksimum_wartosc}}, są kolejno: {{Code|4}} i {{Code|20}}. Jest to minmalna i maksymalna wartość dla liczb po spacji siedzące przy podstawach parametrów, która jest podana w parametrze drugim funkcji. == Funkcje, czy są takie parametry == Poniższe funkcje zwracają {{Code|tak}}, gdy coś znaleziono, gdy nic, to wartość języka {{lpg|Lua}}, czyli: {{Code|nil}}, co odpowiada w odpowiednikach uruchamianych w ramce szablonu wartości pustej {{Code|""}}. === {{Code|p["CzySąParametryNumerowaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy numerowane, tzn. od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNumerowaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, poieważ istnieją jakieś parametry numerowane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNumerowaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNumerowaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy numerowane tablicy, tzn. numerowane od {{Code|1}} bez przerw, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNumerowaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy numerowane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={"nazwa1", "nazwa2", "nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_numerowane_tablicy=parametry_modul["CzySąElementyNumerowaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo istnieją jakieś elementy numerowane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametryNienazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane, tzn., niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNienazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=nazwa1|5=nazwa2|8=nazwa3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane, a nienumerowane (nie zaczyna się od {{Code|1}}). Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNienazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNienazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nienazwane, tzn. nienazwane, niekoniecznie od {{Code|1}} mogący być z przerwami, ale z końcem. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNienazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={[3]="nazwa1", [5]="nazwa2", [8]="nazwa3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nienazwane tablicy {{Code|tabela}}, a nienumerowane (nie zaczyna się od {{Code|1}}). === {{Code|p["CzySąParametryNazwaneSzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametryNazwaneSzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametryNumerowaneSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|10=wartość2|15=wartość3}} </syntaxhighlight> Szablon zwróci wynik {{Code|tak}}, ponieważ ma on jakieś parametry nazwane. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyNazwaneTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyNazwaneTablicy"]()}} === Funkcja służy do wskazania, czy w tablicy {{Code|tabela}} są elementy nazwane, tzn. niemający klucza w postaci liczby naturalnej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyNazwaneTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartośc3", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nazwane=parametry_modul["CzySąElementyNienazwaneTablicy"](table,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ są jakieś elementy nazwane tabeli {{Code|tabela}}. === {{Code|p["CzySąParametrySzablonu"](frame)}} === Funkcja służy do wskazania, czy w parametrach szablonu rodzica, w której jest uruchomiona ta funkcja w postaci ramki, są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąParametrySzablonu"] = function(frame)...end; </syntaxhighlight> Parametry ramki szablonu, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|niepuste}} - czy ma uwzględniać parametry tylko niepuste, * {{Code|frame:getParent().args}} - tablica do rozważań przez funkcję biblioteczną. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzySąParametrySzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość4|2=nazwa4|6=nazwa6}} </syntaxhighlight> Szablon zwroci wynik {{Code|tak}}, ponieważ ma on jakieś parametry. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzySąElementyTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzySąElementyTablicy"]()}} === Funkcja służy do wskazania, czy w parametrach tabeli {{Code|tabela}} są elementy nienazwane lub nazwane, tzn. elementy niemający klucza w postaci liczby naturalnej i łańcuchowej. Można wskazać, są takie te elementy niepuste za pomocą dodatkowego parametru. <syntaxhighlight lang="lua"> p["CzySąElementyTablicy"]=function(tabela,wliczac)...end; </syntaxhighlight> Parametry funkcji, sprawdzający, czy są elementy nienazwane lub nazwane, ewentualnie niepuste: * {{Code|tabela}} - tabela do rozważań, * {{Code|wliczać}} - czy ma uwzględniać parametry niepuste w tabeli {{Code|tabela}}. Wywołanie przykładowej tej funkcji jest: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1", ["nazwa2"]="wartość2", ["nazwa3"]="wartość3", [2]="nazwa4", [6]="nazwa5", }; local parametry_modul=require("Module:Parametry"); local czy_sa_elementu_nienazwane_lub_nazwane=parametry_modul["CzySąElementyTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, ponieważ ta tabela {{Code|tabela}} ma jakieś elementy. === {{Code|p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"](frame)}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w parametrach szablonu rodzica, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyParametrSzablonu"] = function (frame)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|niepuste}} - taki element nie może być pusty, * {{Code|frame:getParent().args}} - tabela ramki szablonu rodzica, wśród, w której następuje to wyszukiwanie. Przykładem wywołania jest, gdy rozważamy parametry niepuste szablonu, ewentualnie niepuste: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyCoNajwyżejJedenNumerowanyParametrSzablonu|niepuste=tak}} </syntaxhighlight> Szablon, w którym jest wywołane to przedstawienie, można napisać w wynikach poniżej. Przykład pierwszy: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Przykład drugi: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|1=nazwa2|nazwa3=6|3=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane. Przykład trzeci: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6|4=nazwa4}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo są dwa elementy nienazwane, ale one nie zaczynają się od {{Code|1}}, dlatego wynik jest przede wszystkim taki. Przykład czwarty: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=5|2=nazwa2|nazwa3=6}} </syntaxhighlight> Szablon zrzuci wynik równy wartości pustej {{Code|""}}, bo nie ma parametrów numerowanych zaczynających się od liczby {{Code|1}}. Funkcja wykorzystuje funkcję: {{Code|{{sr|#p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()|p=Parametry}}}}, do obsługi tej funkcji ramki, którą wywołuje się w wikikodzie. === {{Code|p["CzyCoNajwyżejJedenNumerowanyElementTablicy"]()}} === Funkcja sprawdza, czy element numerowany jest od jedynki, i czy jest on jeden wśród parametrów nienazwanych w podanej tabeli, w której jest wywołana ta funkcja ramki. <syntaxhighlight lang="lua"> p["CzyCoNajwyżejJedenNumerowanyElementTablicy"] = function (args,wliczac)...end; </syntaxhighlight> Parametry funkcji sprawdzające, czy jest jeden element numerowany funkcji: * {{Code|args}} - tabela ramki szablonu rodzica, wśród, w której następuje to wyszukiwanie, * {{Code|wliczac}} - taki element nie może być pusty. Wywołanie przykładowej tej funkcji jest, pierwsze: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6,}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik {{Code|tak}}, bo liczba elementów numerowanych jest {{Code|1}}, i nie ma dalszych elementów nienazwanych. Wywołanie przykładowej tej funkcji jest, drugie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [1]="nazwa2", ["nazwa3"]=6, [3]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, trzecie: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, [4]="nazwa4",}; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, ale, są dwa elementy nienazwane. Wywołanie przykładowej tej funkcji jest, czwarte: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]=5, [2]="nazwa2", ["nazwa3"]=6, }; local parametry_modul=require("Module:Parametry"); local czy_jest_co_najwyżej_jeden_element_numerowany=parametry_modul["CzyCoNajwyżejJedenNumerowanyElementTablicy"](tabela,true); </syntaxhighlight> Funkcja zrzuci wynik równy wartości {{Code|nil}}, bo nie ma pierwszego elementu numerowanego, tzn. dla parametru {{Code|tabela[1]}}, mimo, że jest jeden element nienazwany. == Funkcje kopiowania tabel == === {{Code|p["KopiujTabelęŁańcuchów"]()}} === Szablon przyjmuje tabelę: {{Code|args}}, którego elementem jest: {{Code|args.tabela}}, która jest tą właściwą tabelę, na której operujemy. Tabela {{Code|args}} posiada składowe do zastępowaniem poszczególnych elementów ściśle dla niego, a jeżeli nie ma dla niego składowych szczególnych, to ogólnie. Z tak uzyskanej tabeli wyodrębniamy pewne elementy szczególnie lub ogólnie, jak z zastępowaniem. A jeśli coś uzyskamy coś, to do niego dodawany jest przedrostek i przyrostek, a podstawie tego tworzymy nową tabelę {{Code|args2}}, którą zwracamy przez tę funkcję. <syntaxhighlight lang="lua"> p["KopiujTabelęŁańcuchów"]=function(args)...end; </syntaxhighlight> Składowymi nazwanymi tabeli: {{Code|args}}, są składowe, którym koniecznym elementem jest {{Code|args.tabela}}, a dalsze są opcjonalne, ale tylko co najmniej jeden z nich musi być podany, co na podstawie, z której tworzymy nową tabelkę, a więc: * {{Code|args.tabela}} - tabela, na której operujemy, na podstawie, z której tworzymy zwracaną tabelę {{Code|args2}}, * {{Code|args["wzór"][coś]}} lub {{Code|args["wzór wszystko"]}} - wzór wyszukiwania, czy element wskazywany przez niego, ma to, * {{Code|args.podstawienie[coś]}} lub {{Code|args["podstawienie wszystko"]}} - podstawienie, dokonane po znalezieniu elementu w elemencie według powyższego zaraz wzoru, i go zastąpienie, * {{Code|args["wzór 2"][coś]}} lub {{Code|args["wzór wszystko 2"]}} - wzór wyodrębnienia pewnej części, jeśli element to ma, a jeśli tego nie ma, to zwracane jest {{Code|nil}}, wtedy z tego elementu tabeli, dla której uzyskaliśmy tę wartość, nie jest przetwarzana jako element nowej tabeli {{Code|args2}}, * {{Code|args.przedrostek[coś]}} lub {{Code|args["przedrostek wszystko"]}} - jeśli element istnieje wyszukany powyższym wzorem, to to jest przedrostek przed tym elementem, * {{Code|args.przyrostek[coś]}} lub {{Code|args["przyrostek wszystko"]}} - jeśli element istnienie wyszukany powyższym wzorem, to to jest przyrostek po tym elemencie. Element {{Code|coś}} jest to jakiś klucz elementu tabeli {{Code|args.tabela}}. W powyższych alternatywach jest sprawdzany najpierw pierwszy element alternatywny, czy istnieje, a potem drugi. Za pomocą tego modyfikujemy tę tabelę lub usuwamy poszczególne jego elementy, tworząc tabelę {{Code|args2}}. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; local args = { tabela = tabela, ["wzór wszystko"] = "%d+$", ["podstawienie wszystko"] = "_numer", ["wzór wszystko"] = "_numer$", ["przedrostek wszystko"] = "coś przed ", ["przyrostek wzystko"] = " coś po", }; local args2 = parametry_modul["KopiujTabelęŁańcuchów"](args); mw.logObject(args2, "Uzyskana tabela:" ); </syntaxhighlight> Uzyskaną tabelą jest w wyniku operacji według powyższego kodu, wyświetlaną przez funkcję {{Code|mw.logObject}} jest: <syntaxhighlight lang="lua"> local args2={ [1] = "coś przed wartość_numer coś po", [2] = "coś przed wartość_numer coś po", ["nazwa1"] = "coś przed wartość_numer coś po", ["nazwa2"] = "coś przed wartość_numer coś po", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementów"]()}} === To jest nierekurencyjne kopiowanie tabeli {{Code|tabela}}, a jeżeli {{Code|wliczac_1{{=}}true}}, to klucze elementów nie mogą być puste lub wskazywać na wartość fałszywą, a jeśli {{Code|wliczac_2{{=}}true}}, to wartości tych elementów o tych kluczach nie mogą być puste lub wskazywać na wartość fałszywą. W takim przypadku wywoływana w takim bądź razem jest funkcja: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}: <syntaxhighlight lang="lua"> p["KopiujTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. <syntaxhighlight lang="lua"> local parametry_modul = require("Module:Parametry"); local tabela = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabela2 = parametry_modul["KopiujTabelęElementów"](tabela,true,true); </syntaxhighlight> Uzyskana tabela {{Code|tabela2}} jest w wyniku wywołania kodu, którą możemy podejrzeć przy pomocy funkcji: {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabela2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", }; </syntaxhighlight> === {{Code|p["KopiujTabelęElementówBezTablicyKluczy"]()}} === Funkcja kopiuje nierekurencyjnie elementy tabeli {{Code|tabelka}}, usuwając z niej elementy o kluczach wskazanych przez tabelę {{Code|tabelka2}}, którego elementy piszemy w postaci {{Code|{"klucz"] {{=}} "wartość"}}. Funkcją wyszukiwującą klucze w tabeli {{Code|tabelka2}} jest: {{Code|{{sr|#p.CzyJestTakiKluczTabeli()|p=Parametry}}}}. Z tabeli można usunąć klucze, ewentualnie przy pomocy {{Code|wliczac_1{{=}}true}}, i ewentualnie wartości {{Code|wliczac_2{{=}}true}}, o wartościach pustych lub fałszywych przy pomocy funkcji: {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A więc: <syntaxhighlight lang="lua"> p["KopiujTabelęElementówBezTablicyKluczy"]=function(tabelka,tabelka2,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|tabelka2}} - tabela zbudowana przy pomocy ściśle określonych kluczy o dowolnych wartościach (wartości są nieistotne), za pomocą których usuwamy elementy tabeli {{Code|tabelka2}}, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykłady usuwania kluczy z tabeli o kluczach i wartościach, pustych lub fałszywych: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={ [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = ""}; local tabelka2={[2]=true,["nazwa2"]=false,}; local tabelka3=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](tabelka,tabelka2,true,true); </syntaxhighlight> Tabelą uzyskaną z wyników: {{Code|tabelka3}}, jest, którą możemy podejrzeć przy pomocy funkcji {{Code|mw.logObject}}: <syntaxhighlight lang="lua"> local tabelka3={ [1] = "wartość1", ["nazwa1"] = "wartość3", }; </syntaxhighlight> === {{Code|p["KopiujRekurencyjnieTabelęElementów"]()}} === Funkcja dokładnie rekurencyjnie kopiuje tabelę {{Code|tabelka}}, pomijając ewentualnie elementy o kluczach, przy pomocy {{Code|wliczac_1{{=}}true}}, i o wartościach przy pomocy: {{Code|wliczac_2{{=}}true}}, przy użyciu funkcji. Funkcja też kopiuje dokładnie również metafunkcje, na razie to jest przygotowane tylko dla jednych z nich, tzn. ona jest zdefiniowana {{ld2|Szablonowe/Potrzebne}}, i nazwana jest ona jako: {{Code|{{sr|#p.MetaTabelkaSzablonowe(__metatablica)|p=Szablonowe/Potrzebne}}}}, w niej musi istnieć składowa tej metatablicy o kluczu {{Code|tablica}}, w której są przechowywane elementy o jakiś kluczach i ich wartościach, właściwa do niego tabela jest zawsze pusta, a ta tabela należąca do metatabelki powiązana z tą tabelą natomiast nie ona taka, ona jest wykorzystywana do liczenia elementów. Więc: <syntaxhighlight lang="lua"> p["KopiujRekurencyjnieTabelęElementów"]=function(tabelka,wliczac_1,wliczac_2)...end; </syntaxhighlight> Parametrami funkcji są: * {{Code|tabelka}} - tabela elementów o kluczach i ich wartościach, na której dokonujemy operacji, * {{Code|wliczac_1}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych kluczy, * {{Code|wliczac_2}} - jeśli {{Code|true}}, tabela {{Code|tabelka}} jest tworzona bez pustych lub fałszywych wartości o pewnych kluczach. Przykładem kopiowania rekurencyjnego tabeli {{Code|tabelka}}, usuwając z niej jednocześnie klucze i wartości, puste lub fałszywe, jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", [""] = "wartość5". ["nazwa3"] = "",["nazwa4"] = { ["nazwa5"}=true, ["nazwa6"] = "", }, }; local tabelka2=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tabelka,true,true); </syntaxhighlight> Wynikiem jest dokładnie przekopiowana tabela {{Code|tabelka}} bez pewnych elementów: <syntaxhighlight lang="lua"> local tabelka2 = { [1] = "wartość1", [2] = "wartość2", ["nazwa1"] = "wartość3", ["nazwa2"] = "wartość4", ["nazwa4"] = {["nazwa5"] = true, }, }; </syntaxhighlight> Obiekt referencyjny {{Code|tabelka2}} wskazuje na inny adres niż {{Code|tabelka}}. == Funkcje istnienia parametrów == === {{Code|p["NazwanyLiczbą"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyLiczbą}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwany parametr, tzn. określony liczbą: <syntaxhighlight lang="lua"> p["NazwanyLiczbą"] = function(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyLiczbą|2}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|2=wartość|3=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo znalazł parametr nienazwany {{Code|2|, ale nie numerowany. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p["NazwanyCiągiem"](frame)}} === Wywołanie ramki {{Code|{{m|Parametry|NazwanyCiągiem}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwany parametr, tzn. określony łańcuchem znaków: <syntaxhighlight lang="lua"> p["NazwanyCiągiem"] = function (frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|NazwanyCiągiem|nazwa1}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość|nazwa2=wartość}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nazwane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nazwane|nazwa1|nazwa2|nazwa3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry, tzn. o kluczach {{Code|nazwa1}} i {{Code|nazwa2}} posiadający wartości, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Nienazwane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Nienazwane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano taki nienazwane parametry (oznaczone liczbami naturalnymi) o wartościach takich jak, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Nienazwane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Nienazwane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|3=wartość1|6=wartość2}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry nienazwane o wartościach takich, tzn. {{Code|wartość1}} i {{Code|wartość2}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Nienazwane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. === {{Code|p.Numerowane(frame)}} === Wywołanie ramki {{Code|{{m|Parametry|Numerowane}}}} umieszcza się w szablonie rodzicu, sprawdza, czy w szablonie podano takie numerowane parametry, tzn. określone łańcuchami znaków: <syntaxhighlight lang="lua"> function p.Numerowane(frame)...end; </syntaxhighlight> To wywołanie np. wygląda: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|Numerowane|wartość1|wartość2|wartość3}} </syntaxhighlight> A wywołanie szablonowe wygląda: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|wartość2|wartość3}} </syntaxhighlight> Wtedy funkcja (ramka) w szablonie zwróci wartość {{Code|tak}}, bo w szablonie są dwa takie parametry numerowane (tzn. numerowane od jedynki bez przerw) o wartościach takich, tzn. {{Code|wartość2}} i {{Code|wartość3}}, które są podzbiorem z trzech wartości według funkcji ramki {{Code|{{m|Parametry|Numerowane}}}}. Funkcje wywołuje się tylko w postaci ramki, a nie w skrypcie {{lpg|Lua}} w {{lpr|Scribunto}}, bo tam istnienie parametru sprawdza się innymi metodami. == Funkcje manipulowania formatów łańcuchów znakowych == === {{Code|p["Odstępy"](frame)}} === ==== Odpowiednik szablonowy ==== Odpowiednik szablonowy {{s|Odstępy}} ma te same parametry, co jej odpowiednik ramkowy funkcyjny: {{Code|{{m|Parametry|Odstępy}}}}. Przykładami wywołania funkcji są: Poniższe przykłady są pokazane za pomocą szablonu {{s|Pre}}. ; Przykład pierwszy {{Pre|{{s|Odstępy| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz już nie. ---- ; Przykład drugi {{Pre|{{s|Odstępy|wewnątrz{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony spacją. ---- ; Przykład trzeci {{Pre|{{s|Odstępy|wewnątrz{{=}}tak|dolny-myślnik{{=}}tak| Oto jest łańcuch. }}}} ; Wynik {{Pre|{{Odstępy|wewnątrz=tak|dolny-myślnik=tak| Oto jest łańcuch. }}}} Widzimy, że odstępy na końcach łańcucha zostały usunięte, a wewnątrz łańcucha każdy odstęp został zastąpiony na dolny myślnik. ==== Funkcja biblioteczna ==== Funkcja usuwa białe znaki i dolne myślniki na końcach podanego ciągu, ale też ewentualnie można przy pomocy tej funkcji zamieniać też te znaki wewnątrz ciągu, o ile nie jest już pusty po poprzedniej operacji, i zamienia ich na jedną spację lub dolny myślnik. <syntaxhighlight lang="lua"> p["Odstępy"] = function(frame)...end; </syntaxhighlight> Parametry funkcji: * {{Code|1}} lub {{Code|nazwa}} - określa podany ciąg, któremu domyślnie są usuwane białe znaki lub dolne myślniki na końcach łańcucha, * {{Code|2}} lub {{Code|wewnątrz}} - czy ma również robić te same operacje, co powyżej domyślną, tylko że wewnątrz ciągu, * {{Code|3}} lub {{Code|dolny-myślnik}} - czy ma zamieniać, spacje i dolne myślniki (jeżeli je wykrywa, patrz parametr poniżej), na dolne myślniki, * {{Code|4}} lub {{Code|spacje}} - czy na końcach i wewnątrz ciągu ma wykrywać, do zamieniania, tylko odstępy, a nie również dolne myślniki. Funkcja zwraca przekształcony ciąg powyższymi metodami. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local nazwa2=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ",}; local nazwa3=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",}; local nazwa4=parametry_modul["Odstępy"]{nazwa=" Oto jest łańcuch. ", ["wewnątrz"]="tak",["dolny-myślnik"]="tak",}; </syntaxhighlight> W pierwszym i drugiej wartości w naszym wypadku funkcja zwróci wartość: <syntaxhighlight lang="lua"> local nazwa2="Oto jest łańcuch."; local nazwa3="Oto jest łańcuch."; local nazwa4="Oto_jest_łańcuch."; </syntaxhighlight> == Funkcje dodawania lub usuwania elementu do tabeli zbioru == === {{Code|p.DodajElementDoZbioru()}} === Funkcja dodaje element do zbioru, czyli do tablicy numerowanej: {{Code|tabela}}, wartość: {{Code|wartość}}. Jej definicji jest: <syntaxhighlight lang="lua"> function p.DodajElementDoZbioru(tabela,wartosc)...end; </syntaxhighlight> Przykładem użycia funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={}; --- Tutaj zwraca true; local tak1=parametry_modul.DodajElementDoZbioru(tabela,"wartość1"); --- Tutaj zwraca true; local tak2=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); --- Tutaj zwraca false; local tak3=parametry_modul.DodajElementDoZbioru(tabela,"wartość2"); </syntaxhighlight> Elementami tej tabeli są: <syntaxhighlight lang="lua"> local tabela={"wartość1","wartość2",}; </syntaxhighlight> Funkcja zbiera tylko niepowtarzające się wartości, w takim wypadku zwraca wartość {{Code|true}}, w przeciwnym wypadku {{Code|false}}. == Funkcje istnienia elementów tabeli == === {{Code|p.CzyJestTakiElementNumerowanyTabeli()}} === Funkcja sprawdza, czy jest taki element numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNumerowanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, numerowanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi od jedynki bez przerw z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={"wartość1","wartość2","wartość3",5,8,"wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementNienazwanyTabeli()}} === Funkcja sprawdza, czy jest taki element nienazwany, niekoniecznie numerowany. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementNienazwanyTabeli(tabela,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nienazwanych, dla której sprawdzamy, czy jakiś element jego o kluczu określonej liczbą naturalną, czy posiada podaną wartość {{Code|wartość}}. Zaużmy, że tabelą naszą jest obiekt zdefiniowany z elementami numerowanymi niekoniecznie od jedynki mogący być z przerwami z końcem na końcu. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={[2]="wartość1",[5]="wartość2",[10]="wartość3",[80]=5,[90]=8,[100]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementNienazwanyTabeli(tabela,"wartość3"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiKluczTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu o dowolnej wartości. <syntaxhighlight lang="lua"> function p.CzyJestTakiKluczTabeli(tabela,klucz)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} elementów, niekoniecznie, nazwanych, dla której sprawdzamy, czy jakiś element jego o danym kluczy {{Code|klucz}}, o dowolnej wartości. Zaużmy, że naszą tabelą jest tabela elementów nazwanych z kluczami i przydzielonymi im wartościom. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiKluczTabeli(tabela,"nazwa5"); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. === {{Code|p.CzyJestTakiElementTabeli()}} === Funkcja sprawdza, czy jest taki element o danym kluczu {{Code|klucz}} i wartości {{Code|wartość}} dla elementów w danej tabeli. <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeli(tabela,klucz,wartosc)...end; </syntaxhighlight> Parametrami funkcji jest tabela {{Code|tabela}} o parametrach niekoniecznie nazwanych, ale on równie dobrze może składać się z elementów nienazwanych, jak i numerowanych. <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]=5,["nazwa5"]=8,["nazwa6"]="wartość4",}; local czy_tak=parametry_modul.CzyJestTakiElementTabeli(tabela,"nazwa5",8); </syntaxhighlight> Funkcja w przykładzie zwraca wartość {{Code|true}}. == Łączenie wielu tabel == === {{Code|p["ŁączDwieTabele"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane jak i nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączDwieTabele"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączDwieTabele"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNumerowanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy ponumerowane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNumerowanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNumerowanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNienazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nienazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNienazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNienazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryElementówNazwanychDwóchTabel"]()}} === Funkcja łączy dwie tabele przy pomocy funkcji: {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}}, które tam są ustawione w sposób ponumerowany, natomiast te tabele zawierają elementy nazwane. Te elementy tych tabel łączymy ze sobą, w ten sposób powstanie wynikowa tabela końcowa. <syntaxhighlight lang="lua"> p["ŁączZbioryElementówNazwanychDwóchTabel"]=function(tabela1,tabela2)...end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryElementówNazwanychDwóchTabel"](tabela1,tabela2); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNienazwanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNienazwanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=false,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={"wartość1","wartość2","wartość3","wartość4",}; local tabela2={"wartość5","wartość6","wartość7","wartość8","wartość9",}; local tabela3={"wartość10","wartość11","wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNumerowanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=false,CzyTylkoNazwaneElementyTabel=false,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={[2]="wartość1",[4]="wartość2",[7]="wartość3",[8]="wartość4",}; local tabela2={[3]="wartość5",[10]="wartość6",[12]="wartość7",[15]="wartość8",[16]="wartość9",}; local tabela3={[1]="wartość10",[7]="wartość11",[9]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNienazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={"wartość1","wartość2","wartość3","wartość4","wartość5","wartość6","wartość7","wartość8","wartość9","wartość10","wartość11","wartość12",}; </syntaxhighlight> === {{Code|p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone w pewien ściśle określony sposób. Funkcja łączy tylko elementy nazwane tabel, tabel ponumerowanych. <syntaxhighlight lang="lua"> p["ŁączZbioryNazwanychElementówNumerowanychTabel"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączZbioryNazwanychElementówNumerowanychTabel"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",}; </syntaxhighlight> === {{Code|p["ŁączNumerowaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób numerowany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele ponumerowane. <syntaxhighlight lang="lua"> p["ŁączNumerowaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=false,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={tabela1,tabela2,tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNumerowaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączNienazwaneTabele"]()}} === Funkcja wykorzystuje funkcję {{Code|{{m|Parametry|ŁączTabele}}}}, którą nigdy się nie implemetuje w postaci ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, ale jako funkcję biblioteczną. Tabele są podane w pierwszej tabeli {{Code|args}}, w której tabele są podane w sposób nienazwany, tzn. określone liczbami naturalnymi, w drugiej tabeli {{Code|args2}} są podane ustawienia tej podanej funkcji bibliotecznej. Te tabele są łączone dokładnie w taki sposób, aby elementy się nie powtarzały, i elementy w nowo powstałej tabeli są powtórzeniem elementów w podanych tabeli z dokładnościa do tej informacji. Funkcja łączy tabele określone liczbami naturalnymi. <syntaxhighlight lang="lua"> p["ŁączNienazwaneTabele"]=function(args) local parametry_modul=require("Module:Parametry"); local args2={CzyPairsTablic=true,["CzyPairsElementówTablic"]=true,CzyNazwaneElementyTabel=true,CzyTylkoNazwaneElementyTabel=false,NazwijElementyNumerowane=true,}; return parametry_modul["ŁączTabele"](args,args2); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local tabela1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",}; local tabela2={["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",}; local tabela3={["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; local args={[2]=tabela1,[10]=tabela2,[13]=tabela3,}; local parametry_modul=require("Module:Parametry"); local tabela_polaczona=parametry_modul["ŁączNienazwaneTabele"](args); </syntaxhighlight> Uzyskaną tabelą w wyniku wywołania tej funkcji jest: <syntaxhighlight lang="lua"> local tabela_polaczona={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",["nazwa5"]="wartość5",["nazwa6"]="wartość6",["nazwa7"]="wartość7",["nazwa8"]="wartość8",["nazwa9"]="wartość9",["nazwa10"]="wartość10",["nazwa11"]="wartość11",["nazwa12"]="wartość12",[2]="wartość13",[4]="wartość14",[7]="wartość15",[8]="wartość16",[3]="wartość17",[10]="wartość18",[12]="wartość19",[15]="wartość20",[16]="wartość21",[1]="wartość22",[7]="wartość23",[9]="wartość24",}; </syntaxhighlight> === {{Code|p["ŁączTabele"]()}} === Funkcja łączy tabele ogólnie nazwane, określone w tablicy {{Code|args2}}, względem parametrów określonych w tablicy {{Code|args2}}. Definicja jej jest: <syntaxhighlight lang="lua"> p["ŁączTabele"] = function(args,args2)...end; </syntaxhighlight> Funkcja łączy jedynie tabele ponumerowane liczbami naturalnymi, czy to w sposób nienazwany, też za pomocą tych liczb, ale wtedy numeracja nie musi być od jedynki i ona może mieć przerwy. Parametry (elementy) tabeli {{Code|args2}} są: * {{Code|args2.CzyPairsTablic}} - jeśli prawdziwa, to określa nazwane elementy tabel w tabeli {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2["CzyPairsElementówTablic"]}} - jeśli prawdziwa, to określa nazwane elementy poszczególnych tabel w tablicy ogólnie nazwanej w {{Code|args2}}, w przeciwnym wypadku numerowane, * {{Code|args2.CzyNazwaneElementyTabel}} - jeśli prawdziwe, łączy nazwane elementy tabel, mogą być określone liczbami naturalnymi, lub nie, w jedną tablicę, * {{Code|args2.CzyTylkoNazwaneElementyTabel}} - jeśli niepuste, łączy tylko nazwane elementy tabel, * {{Code|args2.NazwijElementyNumerowane}} - jeśli prawdziwe, to wśród elementów nienazwanych elementy numerowane traktuje je jako nazwane, w przeciwnym wypadku takie elementy dodaje do zbioru elementów numerowanych łączonych tablic. Przykładami wykorzystania tej funkcji są funkcje łączenia tabel zdefiniowane w funkcjach powyżej, tzn. zdefiniowane w: * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy ponumerowane elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - laczy nazwane tylko liczbami naturalnymi elementy tabel, tabel nazwanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNienazwanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel określonych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNumerowanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy ponumerowane tabel, tabel ponumerowanych liczbami naturalnymi, * {{Code|{{sr|#p["ŁączZbioryNienazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy elementy nazwane tylko liczbami naturalnymi tabel, tabel ponumerowanych, * {{Code|{{sr|#p["ŁączZbioryNazwanychElementówNumerowanychTabel"]()|p=Parametry}}}} - łączy tylko elementy nazwane tabel, tabel ponumerowanych. Powyższe funkcje elementy nienazwane łączy w zbiory, ale nie jako elementy nazwane, tylko jako ponumerowane. {{Hr}} * {{Code|{{sr|#p["ŁączNumerowaneTabele"]()|p=Parametry}}}} - łączy tabele ponumerowane, * {{Code|{{sr|#p["ŁączNienazwaneTabele"]()|p=Parametry}}}} - łączy tabele określone liczbami naturalnymi. Powyższe funkcje łączą w sposób dokładny wiele tabel, niezależnie z jak nazwanymi elementami, te nazwane jest nie tylko określone liczbami naturalnymi (one nie muszą być ponumerowane), ale też łańcuchami. {{Hr}} Działanie tych funkcji w powyższej wyliczance można rozszyfrować na podstawie ich nazw podanych w nawiasach kwadratowych w cudzysłowach. == Funkcje dodawania lub usuwania elementów z tabeli o takich kluczach == === {{Code|p["UsuńElementyTabeli"]()}} === Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["UsuńElementyTabeli"]=function(tabelka_1,tabelka_2)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabelka_koncowa=parametry_modul["UsuńElementyTabeli"](tabelka_1,tabelka_2); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to ma taką referencję, co {{Code|tabelka_1}}, ma elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Tworzenie tabeli == === {{Code|p["TwórzTabelęBezPowtarzającychKluczyTabel"]()}} === Funkcja jest analogiem do funkcji {{Code|{{sr|#p["UsuńElementyTabeli"]()|p=Parametry}}}}. Funkcja w tabelce {{Code|tabelka_1}} usuwa elementy, którego klucze są w {{Code|tabelka_2}}, któremu wartości przyporządkowane są obojętne, byle tylko by nie były jako {{Code|nil}}. Najprościej gadając, wartości moją mieć w drugiej tabelce wartość {{Code|true}}, ale nie muszą takie być. <syntaxhighlight lang="lua"> p["TwórzTabelęBezPowtarzającychKluczyTabel"]=function(args)...end; </syntaxhighlight> Przykład działania: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka_1={["nazwa1"]="wartość1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",["nazwa4"]="wartość4",}; local tabelka_2={["nazwa1"]=true,["nazwa3"]=true,}; local tabela_args={tabelka_1,tabelka_2,}; local tabelka_koncowa=parametry_modul["TwórzTabelęBezPowtarzającychKluczyTabel"](tabelka_args); </syntaxhighlight> Stworzona w ten sposób tabelka {{Code|tabelka_koncowa}}, to nie ma takiej samej referencji, co {{Code|tabelka_1}}, tylko inną, ma za to elementy, jako: <syntaxhighlight lang="lua"> local tabelka_koncowa={["nazwa2"]="wartość2",["nazwa4"]="wartość4",}; </syntaxhighlight> == Funkcje typu == === {{Code|p.TypeTable()}} === Funkcja sprawdza, czy typem zmiennej jest tabela w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeTable(zmienna) return (type(zmienna)=="table"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabelka={"wartość1","wartosc2",["nazwa1"]="wartość3",} local czy_tak=parametry_modul.TypeTable(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeFunction()}} === Funkcja sprawdza, czy typem zmiennej jest funkcja w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeFunction(zmienna) return (type(zmienna)=="function"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local funkcja=function(frame)return true;end; local czy_tak=parametry_modul.TypeFunction(funkcja); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeString()}} === Funkcja sprawdza, czy typem zmiennej jest łańcuch znakowy w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeString(zmienna) return (type(zmienna)=="string"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local str="wartość"; local czy_tak=parametry_modul.TypeString(tabelka); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeBoolean()}} === Funkcja sprawdza, czy typem zmiennej jest typ logiczny w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeBoolean(zmienna) return (type(zmienna)=="boolean"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_jest_tam=false; local czy_tak=parametry_modul.TypeBoolean(czy_jest_tam); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNumber()}} === Funkcja sprawdza, czy typem zmiennej jest liczba w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNumber(zmienna) return (type(zmienna)=="number"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local liczba=2; local czy_tak=parametry_modul.TypeNumber(liczba); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> === {{Code|p.TypeNil()}} === Funkcja sprawdza, czy typem zmiennej jest zmienna z przydzieloną wartością, której jest {{Code|nil}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> function p.TypeNil(zmienna) return (type(zmienna)=="nil"); end; </syntaxhighlight> Przykładem działania funkcji jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_nil=nil; local czy_tak=parametry_modul.TypeNil(czy_nil); -- Wartością zmiennej: czy_tak, jest: true; </syntaxhighlight> == Funkcje prawdy i fałszu == W funkcjach {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} uruchomione w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} muszą posiadać dodatkowo parametr {{Parametr|wyspecjalizowana|tak}}, aby dało się w je wsadzić skutecznie parametry do samej tej ramki dziecka, a nie używać parametry szablonu rodzica. === {{Code|CzyTakSilnik(args,funkcja)}} === Funkcja pomocnicza służąca do liczenia wartości logicznej {{Code|tak}} lub {{Code|nil}} parametrów ramki, w wikikodzie, funkcji {{lpg|lua}} w {{lpr|Lua|Scribunto}}. <syntaxhighlight lang="lua"> local function CzyTakSilnik(args,funkcja)...end; </syntaxhighlight> Możliwymi wartościami funkcji parametru {{Code|funkcja}} jest {{Code|CzyTak}} lub {{Code|CzyTakCiąg}} (ta funkcja wykorzystuje funkcję {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} do swojego argumentu, który służy do sprawdzania, jaki spełnia warunek). Gdy istnieje parametr tablicy {{Code|args}} funkcji o parametrze nienazwanym {{Code|args[2]}}, to ona zbiera argumenty ramki nazwane jak nazwane, tzn. klucze i ich wartości przypisuje, a w przypadku parametrów nienazwanych (nie są zbierane elementy w tej tablicy o kluczach o wartości: {{Code|1}} i {{Code|2}}), ich klucze są pomniejszane o dwa, w ten sposób jest utworzona tabela {{Code|argsfun}}. Dla {{Code|args[2]}} funkcja uruchamia bibliotekę o tej właśnie nazwie, a w niej funkcję określoną argumentem {{Code|args[1]}}. Gdy nie ma składowej drugiej tablicy, tzn. {{Code|args[2]}}, to wtedy funkcja sprawdza, czy {{Code|args[1]}} to jest liczba w łańcuchu znakowym, lub bezpośrednio liczba, a jeżeli nie da się jej przetransformować na liczbę, to sprawdza, czy typem tej zmiennej jest {{Code|string}} (czy typem jest szereg), po działaniu funkcją: {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} , jeśli ma wtedy o wartość: {{Code|"true"}}, wtedy ta zmienna przyjmuje wartość {{Code|true}}, {{Code|"false"}}, wtedy {{Code|false}}, {{Code|"nil"}}, wtedy {{Code|nil}}. A jeżeli ta zmienna żadnej tej wartości nie przyjmuje z tych wartości, to wtedy jest transformowana na liczbę, jeżeli da się tą operację dokonać. Na samym końcu jest liczona wartość logiczna z przygotowanymi parametrami, według jednej z dwóch specjalnie przygotowanych funkcji w postaci wywołania ogólnego: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); return (parametry_modul[funkcja]{[1]=parametr,[2]=argsfun,})and "tak" or nil; </syntaxhighlight> Gdzie {{Code|funkcja}}, to {{Code|CzyTak}} lub {{Code|CzyTakCiąg}}, a {{Code|parametr}}, to funkcja w jakimś module lub inna wartość, a {{Code|argsfun}}, to tabela argumentów ramki, dziecka, w kodzie {{lpg|Lua}} w {{lpr|Scribunto}}, w wikikodzie w szablonie rodzicu. Gdy ta funkcja zwróci wartość logiczną odpowiadającą {{Code|true}}, to wtedy zwraca {{Code|tak}}, w przeciwnym wypadku {{Code|nil}}. Ta funkcja jest wykorzystywana, gdy jest uruchamiana w ramce, gdy mamy parametry ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wyspecjalizowana=tak}} </syntaxhighlight> Podobnie jest z funkcją {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. A jak jest tworzony parametr zmiennej z powyższych wywołań, to jest powiedziane powyżej. Równie dobrze możemy zefiniowć atrapę funkcji {{Code|frame.getParent}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"]{args={ [1]=" Wartość ", [2]="", ["nazwa1"]="wartość1", ["nazwa2"]="wartość2", [3]="wartość3", [4]="wartość4", ["wyspecjalizowana"]="tak", }, getParent=function()end, }; </syntaxhighlight> Czasami tak potrzeba robić, by ominąc zabezpieczenia pewnych funkcji, nawet tutaj. === {{Code|p["CzyTakCiąg"](...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}} i {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p["CzyTakCiąg"]=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTakCiąg| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi pustemu, mimo że funkcja {{Code|{{sr|#p.CzyTak(...)|p=Parametry}}}} zwróci wartość {{Code|tak}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul["CzyTakCiąg"](" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|nil}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość podana zawiera znaki nierówne odstępowi, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. === {{Code|p.CzyTak(...)}} === W tej funkcji parametry mogą być zbierane w osobnych parametrach lub w jednej tablicy albo ta funkcja może być uruchomiona w ramce. Funkcja do swojego działania nie wykorzystuje do tego {{Code|{{sr|#p["Odstępy"](frame)|p=Parametry}}}}, tak jak to robi {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. <syntaxhighlight lang="lua"> p.CzyTak=function(...)...end; </syntaxhighlight> Jeżeli ta funkcja jest uruchomiona w ramce, np. w postaci: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| Wartość |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość {{Code|tak}}, tak jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, a w przypadku: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak| |wyspecjalizowana=tak}} </syntaxhighlight> To w tym przypadku funkcja zwraca wartość równą ciągowi {{Code|tak}}, mimo że funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}} zwróci wartość równoważną ciągowi pustemu. <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|CzyTak||wyspecjalizowana=tak}} </syntaxhighlight> Ta funkcja uruchomiona w ramce w wikikodzie zwraca wartość równą ciągowi pustemu, tak samo, jak funkcja {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}. Podobnie jest w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, czyli: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" Wartość "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(" "); </syntaxhighlight> Ta funkcja zwróci wartość {{Code|tak}}, niezależnie, czy tym ciągiem jest szereg składający się z samych znaków odstępów. A teraz inny przykład: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local czy_tak=parametry_modul.CzyTak(""); </syntaxhighlight> Ta funkcja wtedy zwróci wartość równą {{Code|nil}} w kodzie {{lpg|Lua}} w {{lpg|Lua|Scribunto}}. Ta funkcja w wikikodzie w szablonie rodzicu, czy w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, służy do sprawdzenia, czy wartość, czy jest nierówna ciągowi pustemu, jeżeli tak, to ta funkcja zwróci znak {{Code|tak}}, w przeciwnym wypadku w wikikodzie zwraca wartość pustą, a w kodzie wartość {{Code|nil}}. == Funkcje parametrów == === {{Code|p.PobierzFrameEwentualnieParent(frame)}} === Argument tej funkcji {{Code|frame}} koniecznie musi być tablicą, w przypadku przeciwnym wywoła to błąd języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzFrameEwentualnieParent(frame)...end; </syntaxhighlight> Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(frame).args; .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzFrameEwentualnieParent(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdy by funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu jest taka niedogodność, że jedynie jest taka nieprawidłowość, że w przypadku parametru tablicy ramki tablicy transportu należy podawać uzyskanej element {{Code|args}}, a w przypadku zwykłej tablicy już nie, tą niedokodność rozwiązuje funkcja, taka że w obu przypadkach działa, jest funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. === {{Code|p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)}} === Argument tej funkcji {{Code|frame}} koniecznie nie musi być tablicą, bo wtedy nie wywoła to błędu języka {{lpg|Lua}}, że z wartości nietabelowej chcemy wyliczyć jego niepusty element {{Code|getParent}}, bo przedtem sprawdzana jest w tej funkcji, czy jest to tablica. W definicji tej funkcji zmienna uzyskana z funkcji: {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}, a jeśli jej składowa {{Code|args}} jest tablicą, to jest właśnie ona zwracana, a jeśli istnieje, ale nie jest tablicą, lub ona nie istnieje, to wtedy brana jest właśnie wartość tablicowa {{Code|frame}}, jeśli jest ona taka, a gdy nie, to wtedy z tej funkcji tutaj nie korzystamy. Funkcja pobiera parametry ramki szablonu rodzica, a nie dziecka, a jeżeli w dziecku w ramce w wikikodzie w szablonie podamy specjalny parametr {{Parametr|wyspecjalizowana|tak}}, to wtedy ta funkcja ściąga parametry ramki. <syntaxhighlight lang="lua"> function p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)...end; </syntaxhighlight> Funkcja wykorzystuje wspomnianą powyżej funkcję do swojego działania, ona jest wtedy aktywowana, gdy zmienna {{Code|frame}} jest tablicą, i jest sprawdzane, czy ona posiada nazwany element o kluczu {{Code|args}}, i czy jest on tablicowy. Jeżeli wartością zmiennej {{Code|frame}} nie jest tablica, ale nie przybiera wartości {{Code|nil}}, to ona jest umieszczana w tablicy, jeżeli zmiennej {{Code|czy_nie_tablica_jako_tablica}} przydzielimy wartość {{Code|true}}, w przeciwnym wypadku zwracana jest ona w postaci niezmienionej, a jeżeli wartość tej zmiennej nie istnieje, to zwracana jest zwykła tablica pusta. Tą funkcją można sterować ze strony ramki tym właśnie specjalnym parametrem o wartości niepustej. W ramce podajemy argumenty wraz z tym specjalnym parametrem: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> To wtedy w kodzie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w module o nazwie {{Code|Nazwa modułu}}, piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); .... end; </syntaxhighlight> To wtedy w kodzie ściągane parametry ramki dziecka. Tą funkcję można równie dobrze wykorzystać do zwykłych tabel: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(tabela); </syntaxhighlight> A w tym przypadku ta funkcja nic nie robi, tylko zmienna {{Code|args}} referencyjnie wskazuje na tablicę {{Code|tablica}}. Ale można ją wykorzystać, gdyby funkcja {{Code|Nazwa funkcji}}, była uruchomiona ze zwykłą tablicą, ale z możliwością, że to może być tablicą ramki {{Code|frame}} tablicy transportu, np.: <syntaxhighlight lang="lua"> --- Pierwsza możliwość; local wartosc1=p["Nazwa funkcji"](frame); -- Druga możliwość local wartosc2=p["Nazwa funkcji"]{["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; </syntaxhighlight> Dla obu tych przypadków nie ma żadnej niedogodności, jak to występowała w {{Code|{{sr|#p.PobierzFrameEwentualnieParent(frame)|p=Parametry}}}}. Jeśliby do funkcji tablicy transportu dać wartość równą nie tablicy, to wtedy równoważnie możemy napisać: <syntaxhighlight lang="lua"> local wartosc="wartość"; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> to wtedy definicję tej funkcji piszemy: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local wartosc=args[1]; end; </syntaxhighlight> lub równoważnie możemy zapisać: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); local wartosc=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> A jeżeli nie wsadziliśmy żadnej wartości do funkcji ramki tablicy transportu lub tą wartością jest {{Code|nil}}, wtedy: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](); </syntaxhighlight> wtedy definicja tej funkcji wygląda: <syntaxhighlight lang="lua"> local p={}; function p["Nazwa funkcji"](frame) local parametry_modul=require("Module:Parametry"); -- Zmienna: args, wskazuje na wartość, którą jest tablicą pustą, tzn. w tej tablicy nie ma wcale elementów; local args=parametry_modul.PobierzArgsParametry(frame); end; </syntaxhighlight> Widzimy, że wtedy zmienna {{Code|args}} jest normalną pustą tablicą, i nie musimy wtedy wcale pisać poniżej, bo wtedy wychodzi w tym przypadku na to samo: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); </syntaxhighlight> Argument drugi w {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, który w naszym przypadku musi mieć wartość {{Code|true}}, a wtedy jest jedynie sens, gdy {{Code|frame}} nie jest tablicą, i gdy chcemy tą wartość umieścić w tablicy, a nie powtórzyć wartość, tzn. napisać: {{Code|{{(}}frame,{{)}}}}, w przeciwnym wypadku musilibyśmy napisać coś w rodzaju, zamiast tak spreparowanej tablicy: {{Code|frame}}, czyli: <syntaxhighlight lang="lua"> -- Pierwszy przypadek, gdy frame jest wartością nietablicową; local parametry_modul=require("Module:Parametry"); ... -- Zwracana wartość: args, to nic innego niż: {frame,}; local args=parametry_modul.PobierzArgsParametry(frame,true); ... -- Zwracana wartość: args, to nic innego niż: frame, a nie {frame,}, jak poprzednio; local args=parametry_modul.PobierzArgsParametry(frame); </syntaxhighlight> === {{Code|p.PobierzParametryRamki(frame)}} === Funkcja służy do ustawienia pewnych domyślnych dwóch pewnych funkcji służących do pobieranie danych z tabelki z pierwszej tej funkcji, jeżeli ona posiada klucz o wartości {{Code|args}}, to zwracana jest ta właśnie tablica jako argument pierwszej tej funkcji, jeżeli jest w ogóle tablicą, w przeciwnym wypadku zwracana jest ta oryginalna tablica też jako argument tej funkcji, w przeciwnym dalszym wypadku zwracana jest zwracana wartość ta jako argument tej drugiej funkcji, która zwraca prawdziwą wartość z argumentu tylko za pierwszym razem, z tej funkcji, za następnym i dalszym razem {{Code|nil}}. Z tak utworzonej ogólnie większej funkcji wykorzystywana jest w budowie funkcja, która jest zwracana przez funkcję w tym nagłówku, która względem jego budowy wywołuje raz pierwszą albo drugą poprzednią wspomnianą funkcję zależną od rodzaju tabeli {{Code|frame}}. Ta funkcja zwracana przez funkcję w nagłówku przyjmuje argument, która jest kluczem do tych wspomnianych tabel (dokładnie, która tabelka to zależy od formatu tej naszej rozważanej zmiennej), a jeżeli to nie tabelka, co jest zwracane, to już zostało powiedziane. Definicja skrótowa tej funkcji jest: <syntaxhighlight lang="lua"> function p.PobierzParametryRamki(frame)...end; </syntaxhighlight> Weźmy ramkę sformułowaną w wikikodzie jako dziecko w szablonie rodzicu: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy tablica ramki tablicy transportu posiada właśnie {{Code|frame}} jest tablicą, i na pewno posiada tablicę o nazwie {{Code|args}}, to wtedy tę funkcję wywołaną w ramce, która wywołuje funkcję w nagłówku, formułujemy: <syntaxhighlight lang="lua"> local p={}; local p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); ... end; </syntaxhighlight> Równie dobrze funkcję z ramki można wywołać w sposób, co wtedy ta funkcja też zostanie wywołana pozytywnie: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}}; </syntaxhighlight> W tej funkcji nie trzeba definiować funkcji fałśzywej {{Code|getParent}}, w postaci: {{Code|getParent{{=}}function()end}}. Widzimi, że ta tablica posiada nazwę zmiennej tablicowej o nazwie {{Code|args}}, ale ona nie jest tablicą ramki tablicy transportu, ale tą tablicę możemy bezposrednio wsadzić w tą główną tablicę w samym argumencie funkcji. Równie dobrze możemy wywołać tę funkcję zdefiniowaną naszą w jakimś module w sposób: <syntaxhighlight lang="lua"> local tabela={["nazwa1"]="wartość1",["nazwa2"]="wartość2","wartość3",}; local wynik=p["Nazwa funkcji"]{tabela); </syntaxhighlight> też ta funkcja prawidłowo się wywoła. W tym przypadku, jak i w przypadkach powyżej, wyniki uzyskuje się w następującym wywołaniach: <syntaxhighlight lang="lua"> --- Zmienna: wartosc1, przyjmuje wartość: "wartość1"; local wartosc1=PobierzParametryRamki("nazwa1"); --- Zmienna: wartosc2, przyjmuje wartość: "wartość2"; local wartosc2=PobierzParametryRamki("nazwa2"); --- Zmienna: wartosc3, przyjmuje wartość: "wartość3"; local wartosc3=PobierzParametryRamki(1); </syntaxhighlight> W innym przypadku wywołań funkcji ramki jest wsadzenie do niej zwykłego nietablicowego elementu, może być też to wartość: {{Code|nil}}. A to wywołanie jest: <syntaxhighlight lang="lua"> local wartosc="wartość"; --Zmienna: wartosc, nie jest w tym przypadku tablicą; local wynik=p["Nazwa funkcji"](wartosc); </syntaxhighlight> Wtedy w tej ramce w celu uzyskania jakikolwiek wartości jest przykład wywołania tej funkcji zwracanej przez funkcję w ramce z argumentem pustym. <syntaxhighlight lang="lua"> -- Zmienna: wartość1, przyjmuje wartość: "wartość"; Jeżeli zmienna: wartosc, przyjmuje wartość: nil, to wywołanie rzuci: nil, i za każdym następny razem; local wartosc1=PobierzParametryRamki(); -- Zmienna: wartość2, przyjmuje wartość: nil; local wartosc2=PobierzParametryRamki(); </syntaxhighlight> W wywołaniach powinno dbać się o właściwą kolejność wywołań, bo argumentem funkcji z tablicy transportu może być zwykła tablicowa wartość. Najpierw uzyskujemy wartości nietablicowe, a później tablicowe, na wypadek niewiadomej {{Code|frame}} jakiego typu ma być wartość. Też ta zmienna może istnieć pod kilkoma możliwymi kluczami, lub tą zmienną może być jedyny argument funkcji, która jest nietablicową wartością, wtedy ją się wywołuje jako dla przypadku, gdy parametr jest nietablicowy lub jest pod kluczem {{Code|tekst}}: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)("tekst"); </syntaxhighlight> Lub chcemy tą funkcję wywołać bezparametrowo, gdy chcemy, by {{Code|frame}} nie była tablicą: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tekst=parametry_modul.PobierzParametryRamki(frame)(); </syntaxhighlight> Wtedy ta zmienna w przedostatnim przykładzie jest pod wartością {{Code|tekst}}, gdy wartość {{Code|frame}} jest tablicą, lub może być jedyną wartością, którą jest {{Code|frame}} jako zmienna nietablicowa, wtedy ta zmienna nie jest pod {{Code|tekst}}, ta funkcja uzyskana z: {{Code|{{sr|#p.PobierzParametryRamki(frame)|p=Parametry}}}}, wtedy może być wywołana tylko raz z nienilową wartością zwracaną, następnym razem zwraca wartość {{Code|nil}}, wtedy to dotyczy przedostatniego i ostatniego przykładu. Jeżeli {{Code|frame}} jest nietablicowa, to wtedy wartość {{Code|tekst}} jest taka sama, co {{Code|frame}}. A jeżeli jest tablicą, to ta wartością jest {{Code|frame.args["tekst"]}}, lub gdy {{Code|args}} nie istnieje, lub istnieje, ale jest nietablicowa, to wtedy ta wartość jest {{Code|frame["tekst"]}}. A gdy zmienne istnieją pod wieloma kluczami, lub gdy funkcję wywołano ze zmienną nietablicową, wtedy ogólnie możemy dla przykładu powiedzieć: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametryRamki=parametry_modul.PobierzParametryRamki(frame); local wartosc1=PobierzParametryRamki("nazwa1") or PobierzParametryRamki(1); local wartosc2=PobierzParametryRamki("nazwa2") or PobierzParametryRamki(2); local wartosc3=PobierzParametryRamki("nazwa3") or PobierzParametryRamki(3); </syntaxhighlight> Wtedy ta zmienna jest pod kluczem, np.: {{Code|nazwa1}} lub {{Code|1}}, tablicy ramki {{Code|frame}} tablicy transportu, następne wywołania dla następnych kluczy też zrzucą pewne wartości, lub jest ona zwykłą nietablicową wartością mogącą być równą nawet {{Code|nil}}. Następne wywołania uzyskanej tak funkcji w przypadku, gdy {{Code|frame}} jest nietablicowy, rzucać będzie z samej definicji funkcji wartości {{Code|nil}}, czyli {{Code|wartosc2{{=}}wartosc3{{=}}nil}}, ale za to wartość {{Code|wartosc1}} nie musi być, ale może, wartością {{Code|nil}}, jest tą wartością, gdy {{Code|frame{{=}}nil}}, w przeciwnym wypadku za pierwszym razem tej wartości nietablicowej wartość nie {{Code|nil}}, a za drugim i dalszym zawsze wartość {{Code|nil}}. === {{Code|p.PobierzElementNumerowanyZFrameLubTablicy(frame)}} === Definicja skrótowa funkcji jest z parametrem charakteryzującym pewien zestaw zmiennych {{Code|frame}}, które nie jest tablicą ramki tablicy transportu, tylko innym parametrem, który jest tablicą parametrów podanych do funkcji, nawet gdy parametrem podanym do funkcji jest jedyna zmienna będąca tablicą ramki, ale z drugiej strony tak nie musi być, może być to rozbudowany zestaw zmiennych, np. nazwanych i nienazwanych, którego wszystkie sposoby podawania łączymy jednym sposobem podawania. Mimo że parametry funkcji są parametrami nienazwanymi, mogą być one ponumerowane, ale zmienna może przyjmować wartość tą samą na różne sposoby, raz w sposób nazwany, a za innym sposobem jako nienazwany. Ogólnie ostateczne parametry łączymy w dane parametry za pomocą jednego sposobu, tzn. za pomocą tej funkcji, i tak uzyskanej tablicy {{Code|args}}, także za pomocą spójnika {{Code|or}}, pisząc np. {{Code|nazwa1{{=}}args["nazwa1"] or args[1]}}, gdzie np. w tym przykładzie wartość klucza {{Code|nazwa1}} o pewnej wartości, która jest wartością z tablicy podaną jako tylko jeden parametr do funkcji w jakimś sposobie podawania argumentów, a {{Code|args[1]}}, jest to pierwszy parametr funkcji, jeżeli w funkcji zmienne podajemy w postaci wielu parametrów, znów jeszcze w innym sposobie realizacji argumentów w argumencie w tej samej funkcji. A ten wspomniany skrót wygląda: <syntaxhighlight lang="lua"> function p.PobierzElementNumerowanyZFrameLubTablicy(frame)...end; </syntaxhighlight> Weźmy najprostszy sposób realizacji tej funkcji, w realizacji: {{Code|1-1, 2-2, 3-3}}, czyli ten opis jest zaraz poniżej. Weźmy funkcję, którą można wywoływać z wieloma parametrami, jak i w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, którą przykładowo piszemy jego wywołanie wewnątrz innej funkcji na pięć sposobów, czyli teraz pierwszy sposób z tylko z parametrem, więc tablicą ramki tablicy transportu wywodzącą się z ramki uruchomioną w wikikodzie w jakimś szablonie rodzicu: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"](frame); </syntaxhighlight> a teraz drugi sposób, pisząc, bezpośrednio inaczej formułując wywołanie tej funkcji, używając zmiennych tablicowych tablicy ramki, ale to nie jest tak naprawdę tablica ramka tablicy transportu, tylko parametr podany bezpośrednio do funkcji, tak jak się to robi w języku {{lpg|Lua}}, nie jak w przykładzie powyżej, więc: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{args={"wartość1","wartość2","wartość3",},}; </syntaxhighlight> Lub równoważnie, pisząc, nie używając zmiennej {{Code|args}}: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]{"wartość1","wartość2","wartość3",}; </syntaxhighlight> Albo te parametry wsadzając do funkcji: <syntaxhighlight lang="lua"> local wynik=p["Nazwa funkcji"]("wartość1","wartość2","wartość3"); </syntaxhighlight> Można też wywołać to wszystko w ramce, {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikdzie, wtedy wsadzając parametry do ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|wartość1|wartość2|wartość3}} </syntaxhighlight> A jak połączyć wszystkie te pięć sposobów, posługiwać się tymi sposobami wewnątrz funkcji {{Code|Nazwa funkcji}} w sposób jednolity, jedynie wtedy należy skorzystać z funkcji z definiowaną w jakimś module w sposób: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); ... end; </syntaxhighlight> Wtedy za pomocą zmiennych {{Code|args}} dostaliśmy się do parametrów, zdefiniowaną w tablicy {{Code|tablica_prametrow_funkcji}}, która jest nic innym jak zestawem parametrów w funkcji: {{Code|Nazwa funkcji}}. W pierwszym i drugim sposobem zmienna ta {{Code|args}} jest zmienną z podtablicy innego {{Code|args}} przekazanych jako parametr tablicy do funkcji, w trzecim sposobie tą zmienną jest cała tablica, a czwartym jest zestaw parametrów. A czym się różnią się te sposoby, a więc te sposoby można powiązać jedną tylko funkcją powiedzianą w nagłówku według przykładu podaną zaraz powyżej, wtedy możemy dostawać się do tych samych zmiennych o takich samych nazwach i wartościach, ale w różnych reprezentacjach na różne sposoby, wtedy można powiedzieć, że: <syntaxhighlight lang="lua"> args[1]="wartość1"; args[2]="wartość2"; args[3]="wartość3"; </syntaxhighlight> Czyli w wyniku działania funkcji w nagłówku, otrzymamy tablicę {{Code|args}}, której wynikiem jest zestaw zmiennych ponumerowanych, ogólnie nienazwanych, któremu wartością odpowiadają te podane w ramce ostatniej powyżej. Na podstawie tego wiemy, jak działa funkcja ta z nagłówka. Pisząc w inny sposób, można też wskazywać: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(...) local tablica_prametrow_funkcji={...}; local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzElementNumerowanyZFrameLubTablicy(tablica_prametrow_funkcji); local wartosc1=args["nazwa1"] or args[1]; local wartosc2=args["nazwa2"] or args[2]; local wartosc3=args["nazwa3"] or args[3]; end; </syntaxhighlight> Zmienne w przykładzie o kluczach {{Code|nazwa1}}, {{Code|nazwa2}} i {{Code|nazwa3}}, posiadające pewne swoje wartości, to są zmienne w tablicy {{Code|args}}, podane też jako zmienna, pewną tablicę jako argument (parametr) funkcji, jeżeli argumenty podano w postaci jednego parametru funkcji w postaci pewnej tablicy z np. elementami nazwanymi, lub jako wiele argumentów w ramce, w wikikodzie, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w pewnym szablonie, a rozpatrując dalej elementy: {{Code|1}}, {{Code|2}} i {{Code|3}}, to jest numer parametru, jeżeli argumenty do funkcji podano w postaci wielu jego parametrów. === {{Code|p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)}} === Ta funkcja zwraca znów inną funkcję, która ma jedyny parametr, mówiący jakiego parametru poszukujemy, co jest wyjaśnione w definicji funkcji z nagłówka, że ona zwraca tą właśnie funkcje, czyli: <syntaxhighlight lang="lua"> function p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame) ... return function(nazwa) return __pobierz_parametr_table_args(nazwa); end; end; </syntaxhighlight> Funkcja zwraca jednocześnie, ta zwrócona z funkcji z nagłówka, dwa parametry, prawdziwą wartość, i numer metody w postaci: {{Code|return wartosc, numer _metody}}. Ta funkcja zwracana ma w swojej definicji inną jeszcze funkcję z tym samym parametrem, co jego rodzic, i to jest za każdym razem inna funkcja w zależności z jakim typem danych się posługujemy {{Code|frame}} i jakie podaliśmy parametry, tzn. pod warunkiem, gdy zmienna {{Code|frame}} jest tablicą, czyli te zmienne druga: {{Code|czy_frame_lub_parent}} (jeżeli funkcja jest uruchomiona w ramce w szablonie, jeżeli wartość {{Code|true}}, to ona wybiera raz parametr z: {{Code|frame.args[nazwa or 1]}}, a za innym razem z {{Code|pf.args[nazwa or 1]}}, gdzie {{Code|pf{{=}}frame:getParent()}}, tutaj jest zwracana wartość: {{Code|return wartosc,2}}), czy trzecia: {{Code|czy_frame}} (która mówi, jeżeli funkcję uruchomiono w ramce, ale przy wartości fałszywej tego pierwszego podanego parametru, mówi, że przy wartości {{Code|true}} tego parametru, wybierana jest zawsze wartość {{Code|frame.args[nazwa or 1}}}, w przeciwnym wypadku uruchamiana jest funkcja {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, tutaj zwracana jest wartość {{Code|return wartosc,1}}). Jeżeli wartością {{Code|frame}} jest wartość nietablicowa, ale niebędącą wartością {{Code|nil}}, wtedy ustawiana jest funkcja, która tylko za pierwszym razem zwraca nienilową wartość {{Code|return wartosc,0}}, a później zwraca wartość {{Code|return nil,0}}. Gdy wartością {{Code|frame}} jest {{Code|nil}}, to funkcja zawsze wraca tą wartość {{Code|return nil,0}}. Powyższy sposób działa również dobrze, gdy zdefiniujemy w parametrach funkcji fałszywą funkcję {{Code|frame.getParent}}. Gdy funkcja nie jest uruchamiana w ramce lub funkcja {{Code|frame.getParent}} nie jest zdefiniowana, to wtedy funkcja wchodzi zawsze w ten krok pętli, jakby {{Code|czy_frame_lub_parent}} było {{Code|false}} według tego powyżej, to wtedy brana jest zmienna {{Code|czy_frame}}, i jaką wartość ona przyjmuje. Funkcję pisze się według sposobu, którą się wywołuje według: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local wartosc1=PobierzParametr("nazwa1") or PobierzParametr(1); local wartosc2=PobierzParametr("nazwa2") or PobierzParametr(2); local wartosc3=PobierzParametr("nazwa3") or PobierzParametr(3); </syntaxhighlight> Na wypadek wartości nietabelowej, tą wartość zapisuje się jako pierwszą w kodzie {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, a dla wartości tabelowych, jaka jest kolejność to jest obojętne, byle by to było sensowne. Tą funkcję podobnie się wywołuje jak funkcję: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}. Wartością {{Code|frame}} nie musibyć tablica ramki tablicy transportu, równie dobrze może być to dowolna tablica lub wartość nietablicowa. Weźmy ramkę, w której uruchamiamy funkcję ramki: <syntaxhighlight lang="mediawiki"> {{#invoke:Nazwa modułu|Nazwa funkcji|nazwa1=wartość1|nazwa2=wartość2|wartość3|wartość4|wartość5|wyspecjalizowana=tak}} </syntaxhighlight> Ona musi być wywołana z parametrem {{Parametr|wyspecjalizowana|tak}}, jako podpowiedź, że liczą sie parametry ramki dziecka, a nie jego rodzica, czyli szablonu. Wtedy funkcję {{Code|Nazwa funkcji}} definiujemy: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,true); ... end; </syntaxhighlight> Wtedy parametr {{Parametr|wyspecjalizowana|tak}} jest ignorowany, a przy wartości {{Code|false}} drugiego parametru funkcji, czyli wywołania: {{Code|local PobierzParametr{{=}}parametry_modul.PobierzParametr(frame,false);}}, już nie, ale nie zawsze. W takim przypadku raz jest brana wartość, jeżeli istnieje, z {{Code|frame.args}}, a jak nie to z: {{Code|pf.args}}. Weźmy inny przypadek: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,true); ... end; </syntaxhighlight> Przy tym też parametr: {{Parametr|wyspecjalizowana|tak}}, jest ignorowany, wtedy jest zawsze wybierana do rozważań tablica: {{Code|frame.args}}. Znów w innym przypadku, gdzie parametr: {{Parametr|wyspecjalizowana|tak}}, jest zawsze rozważany w naszym wypadku: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame,false,false); ... end; </syntaxhighlight> To to wywołanie, wtedy dokładnie działa jak funkcja: {{Code|{{sr|#p.PobierzArgsParametry(frame, czy_nie_tablica_jako_tablica)|p=Parametry}}}}, a zwrócona funkcja: {{Code|PobierzParametr}} pobiera elementy z tak uzyskanej tablicy {{Code|args}}. W przypadku, gdy {{Code|frame}} nie jest tablicą, wtedy parametry: {{Code|czy_frame_lub_parent}} i {{Code|czy_frame}}, są w takim przypadku zawsze ignorowane, ale muszą być ustawione na wypadek, gdy by do funkcji {{Code|Nazwa funkcji}} wsadzono tablicę, np.z ramki tablicę ramki tablicy transportu. Najprostszym często ogólnym przykładem, który prawie zawsze jest stosowany: <syntaxhighlight lang="lua"> local p={}; p["Nazwa funkcji"]=function(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); ... end; </syntaxhighlight> Wtedy parametr: {{Parametr|wyspecjalizowana|tak}}, jest prawie zawsze nieignorowany, ale nie zawsze. == Funkcje wartości logicznej == Funkcje te wykorzystują funkcję: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}, jeżeli mamy ciąg składający się z samych znaków odstępu, to funkcja zwraca wartość odpowiadający wartości: {{Code|false}}, a dla innych wartości to działa jak: {{Code|true}}, dla instrukcji warunkowej: {{Code|{{s|#if:coś|wtedy|przeciwnie}}}}. === {{Code|p.And(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|and}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli wszystkie z tych wartości są równe wartości {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.And(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1|wartość2|wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|And|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Or(frame)}} === Funkcja działa operator logiczny operatorowy: {{Code|or}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartości parametrów składającą się, przynajmniej, któreś z nich, z nie znaków odstępu i niebędące ciągami pustymi, na wartość składający się z ciągowi niepustemu, czyli {{Code|tak}}, w w przeciwnym wypadku mamy wartość wyniku równą ciągowi pustemu. Funkcja zamienia wartości każdego parametru na wartości logiczne: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i jeżeli z któreś z tych wartości jest {{Code|true}}, to funkcja zwraca {{Code|tak}}, w przeciwnym wypadku zwraca wartość równą ciągowi pustemu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Or(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|wartość1||wartość3}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|tak}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Or|||}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|nie}}. === {{Code|p.Not(frame)}} === Funkcja działa jak operator logiczny operatorowy: {{Code|not}}, w języku {{lpg|Lua}}. Funkcja służy jedynie do uruchamiania w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, zamienia wartość składającą się z nie znaków odstępu i niebędący ciągiem pustym, na wartość składający się z ciągu pustego, i odwrotnie, czyli wartość pustą na wartość mający w sobie inne znaki niż odstępu. Funkcja zamienia wartość pierwszego parametru na wartość logiczną: {{Code|true}}/{{Code|false}} (według funkcji: {{Code|{{sr|#p["CzyTakCiąg"](...)|p=Parametry}}}}), i zamienia ją na przeciwność, wartości {{Code|true}} odpowiada {{Code|tak}}, a {{Code|false}} odpowiada wartości pustej. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.Not(frame)...end; </syntaxhighlight> Przykład działania funkcji w ramce {{Lpg|Lua}} w {{lpr|Lua|Scribunto}}, w wikikodzie w szablonie, bo ta funkcja służy do uruchamiania właśnie w szablonach, jest: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|tak}}|tak|nie}} </syntaxhighlight> W powyższym przykładzie funkcja zwróci wartość {{Code|nie}}. A w przykładzie z przeciwną zwracaną wartością: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Not|}}|tak|nie}} </syntaxhighlight> natomiast zostanie zwrócona wartość {{Code|tak}}. == Funkcje porównań == === {{Code|p.Mniejszy(frame)}} === Funkcja zastępuje parser logiczny: {{Code|{{s|#expr:coś|wtedy|przeciwnie}}}}, dla porównania dwóch wartości logicznych, działa on szybciej niż ten parser, bo on musi uwzględniać skomplikowaność wyrażeń matematycznych do policzenia, a nasza funkcja w języku: {{lpg|lua}} w {{lpr|Lua|Scribunto}}, już nie. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Mniejszy(frame)...end; </syntaxhighlight> Funkcja sprawdza, czy spełniona jest wartość mniejszości pierwszego parametru liczbowego: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5|3}}|tak|nie}} </syntaxhighlight> Funkcja wtedy zrzuci wartość {{Code|nie}}, bo {{Code|5}} jest większe niż {{Code|3}}. Można też sprawdzić, czy liczba jest ujemna, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|-5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|tak}}. Można też sprawdzić, czy liczba jest dodatnia, za pomocą wywołania: <syntaxhighlight lang="mediawiki"> {{#if:{{#invoke:Parametry|Mniejszy|5}}|tak|nie}} </syntaxhighlight> Funkcja zrzuci wartość {{Code|nie}}. == Ile jest podanych elementów w szablonie według parametrów ramki == === {{Code|p.IlePodano(frame)}} === Funkcja sprawdza, ile jest podanych parametrów w parametrach rodzica szablonu z parametrów nazwanych lub nienazwanych, ale traktowanych jak nazwane, podanych w dziecku. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.IlePodano(frame)...end; </syntaxhighlight> Wywołanie szablonu, w której jest wywołana funkcja: {{Code|{{m|Parametry|IlePodano}}}}, jako z parametrami, i nie tylko, podanymi w ramce tej funkcji w tym szablonie: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa1=wartość1|nazwa2=wartość2|nazwa3=wartość3|wartość4|wartość5}} </syntaxhighlight> To wtedy wywołanie w nim naszej funkcji bibliotecznej w postaci ramki wygląda, jako: <syntaxhighlight lang="mediawiki"> {{#invoke:Parametry|IlePodano|nazwa1|nazwa3|2|nazwa4|5}} </syntaxhighlight> Funkcja zwróci wartość {{Code|3}}, a nie {{Code|5}}, bo trzy tylko parametry znaleziono w ramce wywołania szablonu, a parametr: {{Code|nazwa4}} i {{Code|5}}, tam wcale nie występują. == Metafunkcje i metatabele == Rozdział przedstawia metatabele i w niej zdefiniowane metafunkcje. === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter}} === Jest to zdefiniowana metatabelka, którego definicja i przyporządkowanie innej normalnej tablicy, wygląda: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter=parametry_modul.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter; local tablica_normalna={["nazwa1"]="wartosc1",["nazwa2"]="wartość2",["nazwa3"]="wartość3",}; setmetatable(tablica_normalna,metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter); </syntaxhighlight> === {{Code|p.metatablica_dla_elementowych_miar_tablicy_wedle_niewielkich_liter.__index(t,klucz)}} === Jeżeli przyporządkujemy wartości {{Code|tablica_normalna}} metatabelkę z metafunkcjami, w tym przypadku metafunkcji {{Code|.__index(t,klucz)}}, wtedy możemy pisać wywołanie: <syntaxhighlight lang="lua"> local wartosc1=tablica_normalna["NAZWA1"]; </syntaxhighlight> Uzyskaną wartością jest: {{Code|wartość1}}, bo wartość: {{Code|NAZWA1}} jest zamieniana na małe litery w tym wywołaniu, ale powyżej podano wartość {{Code|nazwa1}} w tablicy {{Code|tablica_normalna}}, wtedy obie wartości są sobie równe, a więc uzyskamy taki wynik. == Iteratory == Poniższe operatory możemy wykorzystać w funkcjach: analogicznego do {{Code|ipairs}}, dla iteratora: {{Code|{{sr|#p.IteratorPoNumerowanychElementachTablicy(t)|p=Parametry}}}}, wynikłej z jego funkcji z wartości zwracanej, i analogicznego do {{Code|next}} (iteratora po kluczach) w {{Code|pairs}}, dla iteratora: {{Code|{{sr|#p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)|p=Parametry}}}}, wynikłe z jego funkcji z wartości zwracanej. === {{Code|p.IteratorPoNumerowanychElementachTablicy(t)}} === Iterator służy do iterowania po kolei liczb w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora. Można ją zdefiniować do obsługi innego iterowania po parametrach numerowanych, analogicznie do {{Code|ipairs}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorPoNumerowanychElementachTablicy(t) ... return function() ... end; end; </syntaxhighlight> Przykład działania iteratora jest: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={1,2,3,4,5,6,7,8,9,10,}; local iter=parametry_modul.IteratorPoNumerowanychElementachTablicy(tablica); for name, value in iter do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> === {{Code|p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja)}} === Iterator służy do iterowania po kolei po zsortowanych kluczach po kolei alfabetycznie, którym są przyporządkowane wartości o pewnych tych kluczach w pewnych tablicach, używając do tego celu tablicy, zdefiniowanego iteratora, metatabelki i metafunkcji w niej zdefiniowanej, gdzie: {{Code|funkcja}}, jest funkcją sortującą łańcuchy znakowe. Można ją zdefiniować do obsługi innego iterowania po parametrach nazwanych za pomocą: {{Code|pairs}}, definiując funkcję: {{Code|__next}}, analoga do {{Code|next}}, jako iteratora po kluczach posortowanych, która jest wartością zwracaną przez funkcję w nagłówku. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(tabela,funkcja) ... return function(tablica,klucz) ... end; end; </syntaxhighlight> Zdefiniujmy metatablicę z metafunkcją: {{Code|__pairs}}, wtedy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local tabela={["D"]="wartość1",["A"]="wartość2",["F"]="wartość3",["C"]="wartość4",}; local __metatabelka={}; __metatabelka.__pairs=function(t) local funkcja_sortujaca=nil; local __next=parametry_modul.IteratorKluczeTabeliAlfabetycznieSortujDoPrzodu(t,funkcja_sortujaca); return __next,t,nil; end; setmetatable(tabela,__metatabelka); for name,value in pairs(tabela) do mw.log("Klucz:",klucz,"Wartość:",value); end; </syntaxhighlight> == Funkcje wartości minimalnej i maksymalnej == === {{Code|p.Max(frame)}} === Funkcja liczy maksimum dwóch podanych wartości, podaną w jednostkach bezwymiarowych. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Max|5|3}}}} → {{Tt|{{#invoke:Parametry|Max|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Max}} lub {{s|Maksimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Max|5|3}}}} → {{Tt|{{Max|5|3}}}} Ta wersja szablonowa wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednostkach bezwzględnych z mianem na końcu na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Max|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Max}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy maksimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich maksimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Max(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Max|5|3}} </syntaxhighlight> Wynikiem tego jest maksimum z tych liczb równą: {{Code|5}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia maksimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local maksimum=parametry_modul.Max(5,3); </syntaxhighlight> Wartością z dwóch liczb jest wartość maksymalna: {{Code|5}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. === {{Code|p.Min(frame)}} === Funkcja liczy minimum dwóch podanych liczb, podaną w jednostkach bezwymiarowych. ==== Odpowiednik szablonowy ==== Dla wersji ramkowej uruchomioną w wikikodzie, np. szablonu: * {{Code|{{m|Parametry|Min|5|3}}}} → {{Tt|{{#invoke:Parametry|Min|5|3}}}} Dla wersji szablonowej, której odpowiednikami szablonowymi są: {{s|Min}} lub {{s|Minimum}}, który można wykorzystać jej definicji wersję ramkową, ale niekoniecznie, a tutaj wykorzystuje parser {{Code|{{s|#expr:coś}}}}. * {{Code|{{s|Min|5|3}}}} → {{Tt|{{Min|5|3}}}} Ta wersja szablonowa wykorzystuje funkcję: {{s|W pikselach}}, do zamiany tej samej liczby w liczbę, ale też liczby w różnych jednostkach bezwzględnych z mianem na końcu na zamianę w liczbę pikseli podaną bez wymiarowo. Wywołanie: {{Code|{{m|Parametry|Min|5|3}}}}, zajmuje mniej zasobów niż: {{Code|{{s|Min}}}}, bo to ostatnie wykorzystuje do liczenia pracochłonną funkcję: {{m|Plik|W pikselach}}, a to pierwsze już nie, liczy minimum bezpośrednio. ==== Funkcja biblioteczna ==== Funkcja do wywołania w ramce dla dwóch parametrów licząca ich minimum, definicja skrótowa, jest: <syntaxhighlight lang="lua"> function p.Min(frame)...end; </syntaxhighlight> W ramce można go wywołać bezpośrednio, dla przykładu dwóch naturalnych parametrów, ale one mogą być też rzeczywiste: <syntaxhighlight lang="lua"> {{#invoke:Parametry|Min|5|3}} </syntaxhighlight> Wynikiem tego jest minimum równą: {{Code|3}}. Tę funkcję można wykorzystać bez pośrednio w programie {{lpg|Lua}} do liczenia minimów dwóch liczb. Ten kod piszemy: <syntaxhighlight lang="lua"> local parametry_modul=require("Module:Parametry"); local minimum=parametry_modul.Min(5,3); </syntaxhighlight> Wartością minimalną z dwóch liczb jest: {{Code|3}}. Widzimy, że w parametrach funkcji nie musimy wykorzystywać żadnej tablicy ramki, bo ona wykorzystuje funkcję: {{Code|{{sr|#p.PobierzElementNumerowanyZFrameLubTablicy(frame)|p=Parametry}}}}, do liczenia parametrów tego obiektu ramki, by uzyskać argumenty podane w parametrach tej funkcji, czy to w wersji wywołaną w ramce, czy jako w zwykłej funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 58vnqvyblabbm4f2jn1b5efhz43xpct Wikibooks:Moduły/Strony 4 63361 538656 538645 2026-03-31T14:48:27Z Persino 2851 538656 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja sprawdza, czy podany {{Code|uri}} jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}},gdy podany adres jest adresem URL, wwedług obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładami użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> tasadum2bo6nu98bfepriz4nnp6trbv 538657 538656 2026-03-31T14:50:28Z Persino 2851 /* {{Code|checkUri()}} */ 538657 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}},gdy podany adres jest adresem URL, wwedług obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładami użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> g4v6kx1w9r7b4nyhftt9ugx0f6wq5x1 538658 538657 2026-03-31T14:51:22Z Persino 2851 /* {{Code|checkUri()}} */ 538658 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładami użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> dk2f2bmibvarowhohwdqg1ots7923ws 538659 538658 2026-03-31T14:52:06Z Persino 2851 /* {{Code|checkUri()}} */ 538659 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 0jv8vj0jjpup1sholkdbgr4521wrhgk 538660 538659 2026-03-31T14:52:29Z Persino 2851 /* {{Code|checkUri()}} */ 538660 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4mpg5sip72yv6921qh86z5kcmkekfbp 538661 538660 2026-03-31T15:21:42Z Persino 2851 /* {{Code|checkImageName()}} */ 538661 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi,w takim przypadku ta funkcji zwróci wynik: {{Code|false}}. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2xqglksrqoquw01rdpd24kdwzfx0ndm 538662 538661 2026-03-31T15:23:39Z Persino 2851 /* {{Code|checkImageName()}} */ 538662 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 79mn70hofqj50qqtw15qpchbpeymrpd 538663 538662 2026-03-31T15:33:01Z Persino 2851 /* {{Code|checkImageName()}} */ 538663 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> o7v9a3tb66okqma8uecqqzz6m0au2mj 538664 538663 2026-03-31T15:51:43Z Persino 2851 /* {{Code|findPlainHttp()}} */ 538664 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {{Code|true}}, w przeciwnym wypadku {{Code|false}}. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|true}}. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|false}}. == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 5kfk6lv14ke5uya8pdsnanl55j1xo5x 538665 538664 2026-03-31T15:52:47Z Persino 2851 /* {{Code|findPlainHttp()}} */ 538665 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {{Code|true}}, w przeciwnym wypadku {{Code|false}}. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ps0cixq5cr4h0vytlqpnznxwsf6ndtj 538666 538665 2026-03-31T15:56:48Z Persino 2851 /* {{Code|findPlainHttp()}} */ 538666 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {{Code|true}}, w przeciwnym wypadku {{Code|false}}. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kul7t9y29aam8ss6ni6dm5x7wminquk 538667 538666 2026-03-31T15:57:59Z Persino 2851 /* {{Code|findAnyHttp()}} */ 538667 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {{Code|true}}, w przeciwnym wypadku {{Code|false}}. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> bbiw4n5ywerfvretx3xrcgiz98fdljb 538668 538667 2026-03-31T15:58:56Z Persino 2851 /* {{Code|findPlainHttp()}} */ 538668 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 32pec3r23owwktl40u034vpfw2ilv4g 538669 538668 2026-03-31T16:00:12Z Persino 2851 /* {{Code|findPlainHttp()}} */ 538669 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kptghvfkpolcqkey16ppqzgt1n8bgsy 538670 538669 2026-03-31T16:05:40Z Persino 2851 /* {{Code|findFile()}} */ 538670 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]] local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> jpi3ygnn97yb6835hpws8hcg28q79vx 538671 538670 2026-03-31T16:06:23Z Persino 2851 /* {{Code|findFile()}} */ 538671 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> gkpkhig65zlfczbi009pwu47m69e7c9 538672 538671 2026-03-31T16:08:34Z Persino 2851 /* {{Code|findFile()}} */ 538672 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == == {{Code|p.ZnajdowaniePlikowe(frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3z976zrz7xipbk62dl0s8czl0orel32 538673 538672 2026-03-31T17:01:14Z Persino 2851 538673 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> l5nkutnlyuprluln0jdfx4v4ngwwrfq 538674 538673 2026-03-31T17:25:38Z Persino 2851 538674 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7irc38wzqqa9e72zo7ryirk4t42k160 538675 538674 2026-03-31T17:36:50Z Persino 2851 538675 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ckmh12on6mynzhcynl7iyrpo4l81n8x 538676 538675 2026-03-31T17:45:54Z Persino 2851 538676 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p+Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p+Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p+Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p+Parametry}}}}. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p+Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> cjlt12fti7e7w7kuu5u48pro812pcv8 538677 538676 2026-03-31T17:46:41Z Persino 2851 538677 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Parametry}}}}. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Parametry}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> cjdbnu9sz7kmoige42mrsvy0gvpt6o8 538678 538677 2026-03-31T17:48:31Z Persino 2851 538678 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7zv0q1iw747g1gerl727fphw173ii48 538679 538678 2026-03-31T17:50:21Z Persino 2851 /* {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} */ 538679 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łacuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2erkp12p53gxz7hlorruv9ztq6shpgu 538680 538679 2026-03-31T17:50:55Z Persino 2851 538680 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> eqet6n23cfzwdly1scvwm6myh64qtxq 538681 538680 2026-03-31T17:53:38Z Persino 2851 /* {{Code|p.SprawdzanieURL(frame)}} */ 538681 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} - adres URL strony internetowej. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> gs7fs1tl1jnao5b13ngyuzgzaa8k1gm 538682 538681 2026-03-31T17:56:49Z Persino 2851 538682 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} - adres URL strony internetowej. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(plik); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(plik); </syntaxhighlight> Funkcja zrzuci wynik nienilowy. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> pk23kdhu2w78a7od70roviwf1lke4u1 538683 538682 2026-03-31T18:02:06Z Persino 2851 538683 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Strony}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje z {{Code|p.}} należą do tablicy transportu zwracanej przez moduł: {{Code|{{ld2|Strony}}}}, a bez niego to są funkcje lokalne w tym module oznaczone słowem {{Code|local}}. Funkcje w tym module są wykorzystywane do sprawdzania, czy dany tekst spełnia jakieś warunki, funkcje bez {{Code|p.}} są wykorzystywane tylko w tym module, a z tym są bazą do imolementacji modułu: {{Code|{{ld2|Sprawdź}}}}, w funkcji: {{Code|{{m|Sprawdź|Parametry}}}}, która służy do sprawdzania parametrów szablonów za pomocą funkcji w module: {{Code|{{ld2|Strony}}}}, ta funkcja też korzysta z innych funkcji z innych modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. == {{Code|checkUri()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy podany: {{Code|uri}}, jest adresem URL. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkUri(uri)...end; </syntaxhighlight> Funkcja obsługuje protokoły dla adresów URL podane w liście dla stronie {{ld2|Strony/dane}}: <syntaxhighlight lang="lua"> p.obslugiwaneUriSchematy={ -- najczęściej używane 'http://', 'https://', '//', -- możliwe 'bitcoin:', 'ftp://', 'ftps://', 'geo:', 'git://', 'gopher://', 'irc://', 'ircs://', 'magnet:', 'mailto:', 'mms://', 'news:', 'nntp://', 'redis://', 'sftp://', 'sip:', 'sips:', 'sms:', 'ssh://', 'svn://', 'tel:', 'telnet://', 'urn:', 'worldwind://', 'xmpp:', }; </syntaxhighlight> Funkcja zwraca wartość logiczną {{Code|true}}, gdy podany adres jest adresem URL, według obsługiwanych protokołów, a jeśli nie, to ona zwróci wartość {{Code|false}}. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local czy_tak=checkUri(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|checkImageName()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function checkImageName(name_nieprzetworzone,przestrzen)...end; </syntaxhighlight> Funkcja sprawdza, czy podany adres wewnętrzny jest adresem pliku. Możliwe są dwa warianty, wariant: {{Code|przestrzen{{=}}false}}, gdzie nie może być podana przestrzeń nazw plikowa, tzn., która jest podana w zmiennej na stronie: {{Code|{{ld2|Strony/dane}}}}, którego fragment: <syntaxhighlight lang="lua"> prefix = { plik = true, image = true, grafika = true, file = true, media = true, }, </syntaxhighlight> lub może, ale nie musi być podana z dodatkowymi przestrzeniami, nawet nieplikowymi, w takim przypadku ta funkcji zwróci wynik: {{Code|false}}, a w przeciwnym wypadku, funkcja może zrzucić wartość {{Code|true}}, ale nie musi. Możliwe są rozszerzenia plików, dla których na funkcja może dać wynik {{Code|true}}, tzn.: <syntaxhighlight lang="lua"> extension = { flac = true, jpg = true, jpeg = true, jpe = true, mid = true, midi =true, mp3 = true, mpg = true, mpeg = true, oga = true, ogg = true, ogv = true, opus = true, png = true, svg = true, tif = true, tiff = true, gif = true, xcf = true, pdf = true, djvu = true, wav = true, webm = true, webp = true, }, </syntaxhighlight> Ale plik też nie musi mieć rozszerzenia, ale może, pliki bez rozszerzeń bez przestrzeni plikowych: <syntaxhighlight lang="lua"> name = { ["@"]=true, }, </syntaxhighlight> Funkcja zwróci wartość {{Code|true}}, gdy strona jest prawidłowych adresem wewnętrznym strony przestrzeni plikowej, gdy drugi argument jest {{Code|false}}, strona nie może być podana z przestrzeniami plikowymi, ale z innymi już tak, co wtedy jest to traktowane jako część nazwy w przestrzeni nazw: {{Np|File|link=tak}}. Gdy drugi parametr ma wartość {{Code|true}}, wtedy strona może być podana z przestrzenią lub nie, byle tylko był to pełny lub nie adres strony pliku. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local czy_tak=checkImageName(plik,true); </syntaxhighlight> Strona jest podana, z prawidłową przestrzenią plikową, z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. Może być też inny przykład: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local czy_tak=checkImageName(plik,false); </syntaxhighlight> Strona jest podana bez przestrzeni plikowej, ale z prawidłowym rozszerzeniem pliku, więc wtedy funkcja zrzuci wartość {{Code|czy_tak}} równą {{Code|true}}. == {{Code|findPlainHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, w tekście, czy istnieje, sprawdza, czy ona nie jest częścią linku zewnętrznego, a jeśli nie, to funkcja zwraca wynik {równy, ale nie {{Code|nil}}, w przeciwnym wypadku {{Code|nil}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findPlainHttp(text)...end; </syntaxhighlight> Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findPlainHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|findAnyHttp()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> local function findAnyHttp(text)...end; </syntaxhighlight> Funkcja sprawdza, czy adres: {{Strong|http://}}, czy {{Strong|https://}}, jest w tekście, wtedy funkcji zwróci wynik nienilowy, a w przeciwym wypadku {{Code|nil}}. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local czy_tak=findAnyHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|findFile()}} == Funkcja jest formułowana do użycia tylko w module, w której został zdefiniowany, ze względu na lokalność tej funkcji. Funkcja sprawdza, czy w tekście jest wywołanie plikowe. Funkcja chowaj wyjątek z obrazka generowanego przez: {{Code|{{s|Link-interwiki|z przestrzenią=tak}}}}. Definicji skrótowa funkcji: <syntaxhighlight lang="lua"> local function findFile(text)...end; </syntaxhighlight> Funkcja rozpoznaje rozszerzenia plików: {{Strong|Plik}}, {{Strong|File}}, {{Strong|Grafika}} i {{Strong|Image}}. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local czy_tak=findFile(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. == {{Code|p.SprawdzanieURL(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieURL(frame)...end; </syntaxhighlight> Funkcja w swojej budowie bezpośrednio wykorzystuje funkcję {{Code|{{sr|#checkUri()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|url}} lub {{Code|1}} - adres URL strony internetowej. Przykładem użycia tej funkcji jest: <syntaxhighlight lang="lua"> local uri="https://em.wikibooks.org/wiki/Mechanik_teoretyczna"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieURL(uri); </syntaxhighlight> Funkcja w przykładzie zrzuci wartość logiczną {{Code|czy_tak{{=}}true}}, czyli prawdę. == {{Code|p.SprawdzanieNazwyPlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.SprawdzanieNazwyPlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie bezpośrednio wykorzystuje funkcję {{Code|{{sr|#checkImageName()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|nazwa}} lub {{Code|1}} - nazwa strony, ewentualnie z rozszerzeniem strony, * {{Code|przestrzeń}} lub {{Code|2}} - czy ma uwzględniać przestrzeń nazw strony. Przykładem użycia jest: <syntaxhighlight lang="lua"> local plik="Grafika:Strona_pliku.jPG"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(plik); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local plik="Strona_pliku.jPG"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.SprawdzanieNazwyPlikowe(plik); </syntaxhighlight> Funkcja zrzuci wynik nienilowy. == {{Code|p.ZnajdowanieNormalnychStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieNormalnychStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie bezpośrednio wykorzystuje funkcję {{Code|{{sr|#findPlainHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są nie w linku zewnętrznym. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieNormalnychStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik {{Code|nil}}. == {{Code|p.ZnajdowanieJakikolwiekStronHttp(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowanieJakikolwiekStronHttp(frame)...end; </syntaxhighlight> Funkcja w swojej budowie bezpośrednio wykorzystuje funkcję {{Code|{{sr|#findAnyHttp()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - jest to tekst do sprawdzenia, czy strony {{Strong|http://}} i {{Strong|https://}}, są w tekście. Przykładem użycia jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem https://pl.wikibooks.org ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. Inny przykład działania tej funkcji jest: <syntaxhighlight lang="lua"> local tekst="Oto jest tekst z linkiem [https://pl.wikibooks.org pl.wikibooks.org] ilustrujący zasada działania Wikibooks"; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowanieJakikolwiekStronHttp(tekst); </syntaxhighlight> Funkcja zrzuci wynik pozytywny nienilowy. == {{Code|p.ZnajdowaniePlikowe(frame)}} == Funkcję uruchamia się w ramce w wikikodzie w szablonie lub w kodzie {{lpg|Lua}}. Definicja skrótowa funkcji jest: <syntaxhighlight lang="lua"> function p.ZnajdowaniePlikowe(frame)...end; </syntaxhighlight> Funkcja w swojej budowie bezpośrednio wykorzystuje funkcję {{Code|{{sr|#findFile()|p=Strony}}}}. Funkcja wykorzystuje do zbierania parametrów funkcji funkcję: {{Code|{{sr|#p.PobierzParametr(frame,czy_frame_lub_parent,czy_frame)|p=Parametry}}}}, którego parametr może być podany w postaci zmiennej łańcuchowej znaków, lub w postaci tablicy, a również w zmiennej {{Code|args}}, w tablicy, która jest parametrem funkcji, a nawet mogą być parametry podane w ramce z wywołaniem tej funkcji. Funkcja przyjmuje parametry: * {{Code|tekst}} lub {{Code|1}} - tekst do spradzenia, czy strona ma wywołania plikowe. Przykładem wywołania te funkcji lokalnej jest: <syntaxhighlight lang="lua"> local tekst="Strona z plikiem: [[Plik:Strona_plikowa.jpg|thumb|right|250px|link=w:Strona_na_wikipedii|Oto jest opis]], a oto jest dalszy tekst."; local strony_modul=require("Module:Strony"); local czy_tak=strony_modul.ZnajdowaniePlikowe(tekst); </syntaxhighlight> Funkcja zwróci wartość nienilową, czyli pozytywną. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> iw987o2yypuw7h27zjrcx0yjq3no4pu Wikibooks:Moduły/Specjalne 4 63362 538732 2026-04-01T09:25:29Z Persino 2851 Utworzono nową stronę "<noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego…" 538732 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 strony_modul=require("Module:Strony"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> k7hee50j918dr28ah059uw7zj85hp9l 538733 538732 2026-04-01T09:26:09Z Persino 2851 538733 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6gm0mjd6f9o3shl7okrhmqsjwky1lwe 538734 538733 2026-04-01T09:30:59Z Persino 2851 538734 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów). {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2ry3tv5cdikq2wvvvwa2n1afny5kkrp 538735 538734 2026-04-01T09:43:52Z Persino 2851 538735 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów). == {{Code|GranicznieSzereg()}} == == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9atn84pgqqzjbp6lorl8aunh2i3tju3 538736 538735 2026-04-01T09:46:42Z Persino 2851 538736 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). == {{Code|GranicznieSzereg()}} == == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8oqd5m4usnj5b71dz3t8om28kbgkk55 538737 538736 2026-04-01T09:49:18Z Persino 2851 538737 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). Te funkcje służą do operacji na tekstach związanych z mechanizmem {{Strong|MediaWiki}}. == {{Code|GranicznieSzereg()}} == == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> frmwv23eaauk3riml66ouxtigb0oac0 538739 538737 2026-04-01T11:38:13Z Persino 2851 /* {{Code|GranicznieSzereg()}} */ 538739 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). Te funkcje służą do operacji na tekstach związanych z mechanizmem {{Strong|MediaWiki}}. == {{Code|GranicznieSzereg()}} == Funkcja ustawia tak wzór, który służy do wyszukiwania tekstu bezpośrednio do całego tekstu, jeśli {{Code|czy_granicznie{{=}}true}}, a gdy nie, to ta zmienna musi przyjmować wartość {{Code|nil}} lub {{Code|false}}. Definicja skrótowa jest: <syntaxhighlight lang="lua"> local function GranicznieSzereg(wzor,czy_granicznie); </syntaxhighlight> Przykład użycia funkcji: <syntaxhighlight lang="lua"> local wzor="%[%[.-%]%]"; local wzor2=GranicznieSzereg(wzor,true); </syntaxhighlight> Funkcja zwraca wynik {{Code|wzór2{{=}}"^%[%[.-%]%]$"}}. A gdy drugi parametr jest np. równy {{Code|nil}} lub {{Code|false}}, wtedy funkcja nie zmienia podanego wzoru, tylko go powtarza. == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6escmocyrrteh7id0tqbvkui80zf7zc 538740 538739 2026-04-01T11:39:13Z Persino 2851 /* {{Code|GranicznieSzereg()}} */ 538740 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). Te funkcje służą do operacji na tekstach związanych z mechanizmem {{Strong|MediaWiki}}. == {{Code|GranicznieSzereg()}} == Funkcja ustawia tak wzór, który służy do wyszukiwania tekstu bezpośrednio do całego tekstu, jeśli {{Code|czy_granicznie{{=}}true}}, a gdy nie, to ta zmienna musi przyjmować wartość {{Code|nil}} lub {{Code|false}}. Definicja skrótowa jest: <syntaxhighlight lang="lua"> local function GranicznieSzereg(wzor,czy_granicznie)...end; </syntaxhighlight> Przykład użycia funkcji: <syntaxhighlight lang="lua"> local wzor="%[%[.-%]%]"; local wzor2=GranicznieSzereg(wzor,true); </syntaxhighlight> Funkcja zwraca wynik {{Code|wzór2{{=}}"^%[%[.-%]%]$"}}. A gdy drugi parametr jest np. równy {{Code|nil}} lub {{Code|false}}, wtedy funkcja nie zmienia podanego wzoru, tylko go powtarza. == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ozamy91isls4enmgws4ixsirju4xotp 538741 538740 2026-04-01T11:51:23Z Persino 2851 /* {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} */ 538741 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). Te funkcje służą do operacji na tekstach związanych z mechanizmem {{Strong|MediaWiki}}. == {{Code|GranicznieSzereg()}} == Funkcja ustawia tak wzór, który służy do wyszukiwania tekstu bezpośrednio do całego tekstu, jeśli {{Code|czy_granicznie{{=}}true}}, a gdy nie, to ta zmienna musi przyjmować wartość {{Code|nil}} lub {{Code|false}}. Definicja skrótowa jest: <syntaxhighlight lang="lua"> local function GranicznieSzereg(wzor,czy_granicznie)...end; </syntaxhighlight> Przykład użycia funkcji: <syntaxhighlight lang="lua"> local wzor="%[%[.-%]%]"; local wzor2=GranicznieSzereg(wzor,true); </syntaxhighlight> Funkcja zwraca wynik {{Code|wzór2{{=}}"^%[%[.-%]%]$"}}. A gdy drugi parametr jest np. równy {{Code|nil}} lub {{Code|false}}, wtedy funkcja nie zmienia podanego wzoru, tylko go powtarza. == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == Funkcja zmienia taki znaczników, tzn. {{Code|<}} i {{Code|>}},na odpowiednie szablony, według, podanego w module: {{Code|{{ld2|Specjalne/dane}}}}, kodu: <syntaxhighlight lang="lua"> local p={} p.szablony_anulowania_znaczeniowego_tagowego_mediawiki={ ["<"]="{{Mniejszy}}", [">"]="{{Większy}}", }; </syntaxhighlight> Definicja skrótowa jest: <syntaxhighlight lang="lua"> function p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(szablon)...end; </syntaxhighlight> Przykład działania kodu: <syntaxhighlight lang="lua"> local tekst="<nowiki>Oto jest tekst</nowiki>"; local tekst2=p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(tekst); </syntaxhighlight> Wynikiem działania funkcji jest tekst: <syntaxhighlight lang="lua"> local tekst2="{{Mniejszy}}nowiki{{Większy}}Oto jest tekst{{Mniejszy}}/nowiki{{Większy}}"; </syntaxhighlight> Ta funkcja wyłącza znaczenie specjalnych tagów mechanizmu {{Strong|MediaWiki}}, i je jako swoje on nie interpretuje, jedynie roztruje to jako zwykły tekst. Taki tekst można włączyć do funkcji {{Code|frame:preprocess}}, wtedy jedynie szablony {{s|Mniejszy}} i {{s|Większy}} zostaną rozwinięte, nie naruszając magiczności tych tagów. Tą funkcje jedynie się stosuje wtedy, gdy nie chcemy, by te taki nie zostały zamienione na specjalne kody {{Code|MediaWiki}} tego mechanizmu. Tak robimy, by później dało je usunąć bardzo łatwo. == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> j69h1mwl9zrulfmugp0xh34nf7zfsw6 538742 538741 2026-04-01T11:57:42Z Persino 2851 /* {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} */ 538742 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Specjalne}}|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 specjalne_modul=require("Module:Specjalne"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. Funkcje w tym module służą do specjalnych celów do obsługi na tekstach, nie tak jak {{Code|{{ld2|Szeregi}}}} (modyfikuje tekst, nawet w liniach), czy {{Code|{{ld2|Strony}}}} (która sprawdza wartość tekstową), a nawet {{Code|{{ld2|Parametry}}}} (do obsługi parametrów), albo {{Code|{{ld2|Html}}}} (do obsługi na tekstach związanych ze stronami HTML). Te funkcje służą do operacji na tekstach związanych z mechanizmem {{Strong|MediaWiki}}. == {{Code|GranicznieSzereg()}} == Funkcja ustawia tak wzór, który służy do wyszukiwania tekstu bezpośrednio do całego tekstu, jeśli {{Code|czy_granicznie{{=}}true}}, a gdy nie, to ta zmienna musi przyjmować wartość {{Code|nil}} lub {{Code|false}}. Definicja skrótowa jest: <syntaxhighlight lang="lua"> local function GranicznieSzereg(wzor,czy_granicznie)...end; </syntaxhighlight> Przykład użycia funkcji: <syntaxhighlight lang="lua"> local wzor="%[%[.-%]%]"; local wzor2=GranicznieSzereg(wzor,true); </syntaxhighlight> Funkcja zwraca wynik {{Code|wzór2{{=}}"^%[%[.-%]%]$"}}. A gdy drugi parametr jest np. równy {{Code|nil}} lub {{Code|false}}, wtedy funkcja nie zmienia podanego wzoru, tylko go powtarza. == {{Code|ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki()}} == Funkcja zmienia taki znaczników, tzn.: {{Code|<}} i {{Code|>}}, na odpowiednie szablony, według podanego w module: {{Code|{{ld2|Specjalne/dane}}}}, kodu: <syntaxhighlight lang="lua"> local p={} p.szablony_anulowania_znaczeniowego_tagowego_mediawiki={ ["<"]="{{Mniejszy}}", [">"]="{{Większy}}", }; </syntaxhighlight> Definicja skrótowa jest: <syntaxhighlight lang="lua"> function p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(szablon)...end; </syntaxhighlight> Przykład działania kodu: <syntaxhighlight lang="lua"> local tekst="<nowiki>Oto jest tekst</nowiki>"; local tekst2=p.ZnakiSpecjalneAnulowaniaIchZnaczeniaTagowegoMediaWiki(tekst); </syntaxhighlight> Wynikiem działania funkcji jest tekst: <syntaxhighlight lang="lua"> local tekst2="{{Mniejszy}}nowiki{{Większy}}Oto jest tekst{{Mniejszy}}/nowiki{{Większy}}"; </syntaxhighlight> Ta funkcja wyłącza znaczenie specjalnych tagów mechanizmu {{Strong|MediaWiki}}, i je jako swoje on nie interpretuje, jedynie roztruje to jako zwykły tekst. Taki tekst można włączyć do funkcji {{Code|frame:preprocess}}, wtedy jedynie szablony {{s|Mniejszy}} i {{s|Większy}} zostaną rozwinięte, nie naruszając magiczności tych tagów. Tą funkcje jedynie się stosuje wtedy, gdy nie chcemy, by te taki nie zostały zamienione na specjalne kody {{Code|MediaWiki}} tego mechanizmu. Tak robimy, by później dało je usunąć bardzo łatwo. == {{Code|p["UsuńŚciśleOkreśloneKategorie"](frame)}} == == {{Code|p["UsuńKategorie"](frame)}} == == {{Code|p["UsuńZnaczniki"](frame)}} == == {{Code|p["UsuńKomentarze"](frame)}} == == {{Code|p["UsuńSzablonyStylów"](frame)}} == == {{Code|p["UsuńWywołaniaPlików"](frame)}} == == {{Code|p["CzyPlik"](frame)}} == == {{Code|p["UsuńInterwiki"](frame)}} == == {{Code|p["CzyInterwiki"](frame)}} == == {{Code|p["CzyAdresLinkuWewnętrznego"](frame)}} == == {{Code|p["CzyLinkWewnętrzny"](frame)}} == == {{Code|p["ZamieńLinkiWewnętrzneNaTekst"](frame)}} == == {{Code|p["ZamieńLinkiZewnętrzneNaTekst"](frame)}} == == {{Code|p["UsuńZnakiSpecjalne"](frame)}} == == {{Code|p["UsuńZbędneBiałeZnaki"](frame)}} == == {{Code|p["WydzielLiczbę"](frame)}} == == {{Code|p["PrzetwórzNagłówek"](frame)}} == == {{Code|p["WydzielZwykłyTekst"](frame)}} == == {{Code|p["OdstępyZmiennychNumerowanychSzablonu"](frame)}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> q00po9opd3924nd2iwapl8oquekvgra